demux.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #if defined(__PLUGIN__) || defined(__BUILTIN__) || !defined(__LIBVLC__)
00026 # error This header file can only be included from LibVLC.
00027 #endif
00028
00029 #ifndef _INPUT_DEMUX_H
00030 #define _INPUT_DEMUX_H 1
00031
00032 #include <vlc_common.h>
00033 #include <vlc_demux.h>
00034
00035 #include "stream.h"
00036
00037
00038 #define demux_New( a, b, c, d, e, f, g, h ) __demux_New(VLC_OBJECT(a),b,c,d,e,f,g,h)
00039 demux_t *__demux_New( vlc_object_t *p_obj, input_thread_t *p_parent_input, const char *psz_access, const char *psz_demux, const char *psz_path, stream_t *s, es_out_t *out, bool );
00040
00041 void demux_Delete( demux_t * );
00042
00043 static inline int demux_Demux( demux_t *p_demux )
00044 {
00045 if( !p_demux->pf_demux )
00046 return 1;
00047
00048 return p_demux->pf_demux( p_demux );
00049 }
00050 static inline int demux_vaControl( demux_t *p_demux, int i_query, va_list args )
00051 {
00052 return p_demux->pf_control( p_demux, i_query, args );
00053 }
00054 static inline int demux_Control( demux_t *p_demux, int i_query, ... )
00055 {
00056 va_list args;
00057 int i_result;
00058
00059 va_start( args, i_query );
00060 i_result = demux_vaControl( p_demux, i_query, args );
00061 va_end( args );
00062 return i_result;
00063 }
00064
00065 #endif
00066