http.h
上传用户:sun1608
上传日期:2007-02-02
资源大小:6116k
文件大小:2k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. /*
  2.  * The contents of this file are subject to the Mozilla Public
  3.  * License Version 1.1 (the "License"); you may not use this file
  4.  * except in compliance with the License. You may obtain a copy of
  5.  * the License at http://www.mozilla.org/MPL/
  6.  * 
  7.  * Software distributed under the License is distributed on an "AS
  8.  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
  9.  * implied. See the License for the specific language governing
  10.  * rights and limitations under the License.
  11.  * 
  12.  * The Original Code is MPEG4IP.
  13.  * 
  14.  * The Initial Developer of the Original Code is Cisco Systems Inc.
  15.  * Portions created by Cisco Systems Inc. are
  16.  * Copyright (C) Cisco Systems Inc. 2001.  All Rights Reserved.
  17.  * 
  18.  * Contributor(s): 
  19.  *              Bill May        wmay@cisco.com
  20.  */
  21. /*
  22.  * http.h - library interface
  23.  */
  24. #ifndef __MPEG4IP_HTTP_H__
  25. #define __MPEG4IP_HTTP_H__ 1
  26. typedef struct http_client_ http_client_t;
  27. /*
  28.  * http_resp_t - everything you should need to know about the response
  29.  */
  30. typedef struct http_resp_t {
  31.   int ret_code;
  32.   const char *content_type;
  33.   const char *resp_phrase; // After the response code, a phrase may occur
  34.   char *body;
  35.   uint32_t body_len;
  36. } http_resp_t;
  37. #ifdef __cplusplus
  38. extern "C" {
  39. #endif
  40.   /*
  41.    * http_init_connection - start with this - create a connection to a
  42.    * particular destination.
  43.    */
  44.   http_client_t *http_init_connection(const char *url);
  45.   /*
  46.    * http_free_connection - when done talking to this particular destination,
  47.    * call this.
  48.    */
  49.   void http_free_connection(http_client_t *handle);
  50.   /*
  51.    * http_get - get from a particular url on the location specified above
  52.    */
  53.   int http_get(http_client_t *, const char *url, http_resp_t **resp);
  54.   /*
  55.    * http_resp_free - free up response structure passed as a result of
  56.    * http_get
  57.    */
  58.   void http_resp_free(http_resp_t *);
  59.   /*
  60.    * http_set_loglevel - set the log level for library output
  61.    */
  62.   void http_set_loglevel(int loglevel);
  63.   /*
  64.    * http_set_error_func - error message handler to call
  65.    */
  66.   void http_set_error_func(error_msg_func_t func);
  67. #ifdef __cplusplus
  68. }
  69. #endif
  70. #endif