URLProtocol Struct Reference

#include <url.h>


Data Fields

const char * name
int(* url_open )(URLContext *h, const char *url, int flags)
int(* url_open2 )(URLContext *h, const char *url, int flags, AVDictionary **options)
 This callback is to be used by protocols which open further nested protocols.
int(* url_read )(URLContext *h, unsigned char *buf, int size)
 Read data from the protocol.
int(* url_write )(URLContext *h, const unsigned char *buf, int size)
int64_t(* url_seek )(URLContext *h, int64_t pos, int whence)
int(* url_close )(URLContext *h)
struct URLProtocolnext
int(* url_read_pause )(URLContext *h, int pause)
int64_t(* url_read_seek )(URLContext *h, int stream_index, int64_t timestamp, int flags)
int(* url_get_file_handle )(URLContext *h)
int(* url_shutdown )(URLContext *h, int flags)
int priv_data_size
const AVClasspriv_data_class
int flags
int(* url_check )(URLContext *h, int mask)


Detailed Description

Definition at line 53 of file url.h.


Field Documentation

Definition at line 87 of file url.h.

Referenced by ffurl_alloc(), ffurl_close(), and url_alloc_for_protocol().

const char* URLProtocol::name

Definition at line 54 of file url.h.

Referenced by ffurl_alloc(), ffurl_connect(), url_alloc_for_protocol(), and urlcontext_to_name().

Definition at line 79 of file url.h.

Referenced by ffurl_protocol_next(), and ffurl_register_protocol().

Definition at line 85 of file url.h.

Referenced by ffurl_close(), and url_alloc_for_protocol().

Referenced by avio_check().

Referenced by ffurl_close().

Referenced by ffurl_get_file_handle().

int(* URLProtocol::url_open)(URLContext *h, const char *url, int flags)

Referenced by ffurl_connect().

int(* URLProtocol::url_open2)(URLContext *h, const char *url, int flags, AVDictionary **options)

This callback is to be used by protocols which open further nested protocols.

options are then to be passed to ffurl_open()/ffurl_connect() for those nested protocols.

Referenced by ffurl_connect().

int(* URLProtocol::url_read)(URLContext *h, unsigned char *buf, int size)

Read data from the protocol.

If data is immediately available (even less than size), EOF is reached or an error occurs (including EINTR), return immediately. Otherwise: In non-blocking mode, return AVERROR(EAGAIN) immediately. In blocking mode, wait for data/EOF/error with a short timeout (0.1s), and return AVERROR(EAGAIN) on timeout. Checking interrupt_callback, looping on EINTR and EAGAIN and until enough data has been read is left to the calling function; see retry_transfer_wrapper in avio.c.

Referenced by ffurl_read(), and ffurl_read_complete().

int(* URLProtocol::url_read_pause)(URLContext *h, int pause)

Referenced by ffio_fdopen().

int64_t(* URLProtocol::url_read_seek)(URLContext *h, int stream_index, int64_t timestamp, int flags)

Referenced by ffio_fdopen().

int64_t(* URLProtocol::url_seek)(URLContext *h, int64_t pos, int whence)

Referenced by ffurl_seek().

Referenced by ffurl_shutdown().

int(* URLProtocol::url_write)(URLContext *h, const unsigned char *buf, int size)

Referenced by ffurl_write().


The documentation for this struct was generated from the following file:

Generated on Fri Oct 26 02:48:07 2012 for FFmpeg by  doxygen 1.5.8