#ifndef VLC_ACCESS_H
#define VLC_ACCESS_H 1
+/**
+ * \file
+ * This file defines functions and definitions for access object
+ */
+
#include <vlc_block.h>
/**
#ifndef VLC_AOUT_H
#define VLC_AOUT_H 1
+/**
+ * \file
+ * This file defines functions, structures and macros for audio output object
+ */
+
# ifdef __cplusplus
extern "C" {
# endif
#define FIXED32_MAX ((vlc_fixed_t) +0x7fffffffL)
#define FIXED32_ONE ((vlc_fixed_t) 0x10000000)
-
/*
* Channels descriptions
*/
#ifndef VLC_ARRAYS_H_
#define VLC_ARRAYS_H_
+/**
+ * \file
+ * This file defines functions, structures and macros for handling arrays in vlc
+ */
+
/**
* Simple dynamic array handling. Array is realloced at each insert/removal
*/
#ifndef VLC_BITS_H
#define VLC_BITS_H 1
+/**
+ * \file
+ * This file defines functions, structures for handling streams of bits in vlc
+ */
+
typedef struct bs_s
{
uint8_t *p_start;
s->p_end = s->p + i_data;
s->i_left = 8;
}
+
static inline int bs_pos( bs_t *s )
{
return( 8 * ( s->p - s->p_start ) + 8 - s->i_left );
}
+
static inline int bs_eof( bs_t *s )
{
return( s->p >= s->p_end ? 1: 0 );
}
+
static inline uint32_t bs_read( bs_t *s, int i_count )
{
static const uint32_t i_mask[33] =
s->p++;
}
}
+
static inline void bs_align_0( bs_t *s )
{
if( s->i_left != 8 )
bs_write( s, s->i_left, 0 );
}
}
+
static inline void bs_align_1( bs_t *s )
{
while( s->i_left != 8 )
#ifndef VLC_BLOCK_H
#define VLC_BLOCK_H 1
+/**
+ * \file
+ * This file implements functions and structures to handle blocks of data in vlc
+ *
+ */
+
/****************************************************************************
* block:
****************************************************************************
#ifndef VLC_CHARSET_H
#define VLC_CHARSET_H 1
+/**
+ * \file
+ * This files handles locale conversions in vlc
+ */
+
#include <stdarg.h>
#include <sys/types.h>
#include <dirent.h>
#ifndef VLC_CODECS_H
#define VLC_CODECS_H 1
+/**
+ * \file
+ * This file defines codec related structures needed by the demuxers and decoders
+ */
+
#ifdef HAVE_ATTRIBUTE_PACKED
# define ATTR_PACKED __attribute__((__packed__))
#else
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
+/**
+ * \file
+ * This file defines of values used in interface, vout, aout and vlc core functions.
+ */
+
/* Conventions regarding names of symbols and variables
* ----------------------------------------------------
*
#ifndef VLC_CONFIGURATION_H
#define VLC_CONFIGURATION_H 1
+/**
+ * \file
+ * This file describes the programming interface for the configuration module.
+ * It includes functions allowing to declare, get or set configuration options.
+ */
# ifdef __cplusplus
extern "C" {
#ifndef VLC_DEMUX_H
#define VLC_DEMUX_H 1
+/**
+ * \file
+ * This files defines functions and structures used by demux objects in vlc
+ */
+
#include <vlc_es.h>
#include <vlc_stream.h>
#include <vlc_es_out.h>
#ifndef VLC_DEVICES_H
#define VLC_DEVICES_H 1
+/**
+ * \file
+ * This file implements functions, structures for probing devices (DVD, CD, VCD)
+ */
+
enum
{
DEVICE_CAN_DVD,
#ifndef VLC_EPG_H
#define VLC_EPG_H 1
+/**
+ * \file
+ * This file defines functions and structures for storing dvb epg information
+ */
+
typedef struct
{
int64_t i_start; /* Interpreted as a value return by time() */
p_epg->p_current = NULL;
TAB_INIT( p_epg->i_event, p_epg->pp_event );
}
+
static inline void vlc_epg_Clean( vlc_epg_t *p_epg )
{
int i;
TAB_CLEAN( p_epg->i_event, p_epg->pp_event );
free( p_epg->psz_name );
}
+
static inline void vlc_epg_AddEvent( vlc_epg_t *p_epg, int64_t i_start, int i_duration,
const char *psz_name, const char *psz_short_description, const char *psz_description )
{
vlc_epg_Init( p_epg, psz_name );
return p_epg;
}
+
static inline void vlc_epg_Delete( vlc_epg_t *p_epg )
{
vlc_epg_Clean( p_epg );
free( p_epg );
}
+
static inline void vlc_epg_SetCurrent( vlc_epg_t *p_epg, int64_t i_start )
{
int i;
#ifndef VLC_ES_OUT_H
#define VLC_ES_OUT_H 1
+/**
+ * \file
+ * This file defines functions and structures for handling es_out in stream output
+ */
+
/**
* \defgroup es out Es Out
* @{
{
return out->pf_add( out, fmt );
}
+
static inline void es_out_Del( es_out_t *out, es_out_id_t *id )
{
out->pf_del( out, id );
}
+
static inline int es_out_Send( es_out_t *out, es_out_id_t *id,
block_t *p_block )
{
{
return out->pf_control( out, i_query, args );
}
+
static inline int es_out_Control( es_out_t *out, int i_query, ... )
{
va_list args;
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
+/**
+ * \file
+ * This file implements gcrypt support functions in vlc
+ */
+
#ifdef LIBVLC_USE_PTHREAD
/**
* If possible, use gcrypt-provided thread implementation. This is so that
GCRY_THREAD_OPTION_PTHREAD_IMPL;
# define gcry_threads_vlc gcry_threads_pthread
#else
+
/**
* gcrypt thread option VLC implementation
*/
#ifndef VLC_HTTPD_H
#define VLC_HTTPD_H 1
+/**
+ * \file
+ * This file defines functions, structures, enums and macros for httpd functionality in vlc.
+ */
+
enum
{
HTTPD_MSG_NONE,
#ifndef VLC_IMAGE_H
#define VLC_IMAGE_H 1
+/**
+ * \file
+ * This file defines functions and structures for image conversions in vlc
+ */
+
#include <vlc_vout.h>
# ifdef __cplusplus
#ifndef VLC__INPUT_H
#define VLC__INPUT_H 1
+/**
+ * \file
+ * This file defines functions, structures and enums for input objects in vlc
+ */
+
#include <vlc_es.h>
#include <vlc_meta.h>
#include <vlc_epg.h>
#ifndef VLC_INTF_STRINGS_H
#define VLC_INTF_STRINGS_H 1
+/**
+ * \file
+ * This file defines a number of strings used in user interfaces
+ */
+
/*************** Open dialogs **************/
#define I_OP_OPF N_("Quick &Open File...")
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
+/**
+ * \file
+ * This file defines functions and structures for iso639 language codes
+ */
+
struct iso639_lang_t
{
const char * psz_eng_name; /* Description in English */
#ifndef VLC_KEYS_H
#define VLC_KEYS_H 1
+/**
+ * \file
+ * This file defines keys, functions and structures for hotkey handling in vlc
+ *
+ */
+
#define KEY_MODIFIER 0xFF000000
#define KEY_MODIFIER_ALT 0x01000000
#define KEY_MODIFIER_SHIFT 0x02000000
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
+/**
+ * \file
+ * This file defines libvlc_int_t internal libvlc instance
+ */
+
TYPEDEF_ARRAY(input_item_t*, input_item_array_t);
/*****************************************************************************
#ifndef VLC_MD5_H
# define VLC_MD5_H
+/**
+ * \file
+ * This file defines functions and structures for handling md5 checksums
+ */
+
/*****************************************************************************
* md5_s: MD5 message structure
*****************************************************************************
#ifndef VLC_MESSAGES_H_
#define VLC_MESSAGES_H_
+/**
+ * \file
+ * This file defines structures and functions to handle messages and statistics gathering
+ */
+
#include <stdarg.h>
/**
#ifndef VLC_META_H
#define VLC_META_H 1
+/**
+ * \file
+ * This file defines functions and structures for stream meta-data in vlc
+ *
+ */
+
#include <vlc_arrays.h>
typedef enum vlc_meta_type_t
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
+/**
+ * \file
+ * This file defines functions for modules in vlc
+ */
+
/*****************************************************************************
* Exported functions.
*****************************************************************************/
#ifndef VLC_NETWORK_H
# define VLC_NETWORK_H
+/**
+ * \file
+ * This file defines interface to communicate with network plug-ins
+ */
+
#if defined( WIN32 )
# if !defined(UNDER_CE)
# define _NO_OLDNAMES 1
extern "C" {
# endif
+/**
+ * \file
+ * This file defines SPU subpicture and OSD functions and object types.
+ */
+
/**********************************************************************
* Base SPU structures
**********************************************************************/
#ifndef LIBVLC_MODULES_MACROS_H
# define LIBVLC_MODULES_MACROS_H 1
+/**
+ * \file
+ * This file implements plugin (module) macros used to define a vlc module.
+ */
+
/*****************************************************************************
* If we are not within a module, assume we're in the vlc core.
*****************************************************************************/
#ifndef VLC_RAND_H
# define VLC_RAND_H
+/**
+ * \file
+ * This file defined random number generator function in vlc
+ */
+
VLC_EXPORT( void, vlc_rand_bytes, (void *buf, size_t len) );
#endif
#ifndef VLC_SERVICES_DISCOVERY_H_
#define VLC_SERVICES_DISCOVERY_H_
+/**
+ * \file
+ * This file functions and structures for service discovery in vlc
+ */
+
# ifdef __cplusplus
extern "C" {
# endif
#ifndef VLC_SOUT_H_
#define VLC_SOUT_H_
+/**
+ * \file
+ * This file defines structures and functions for stream ouput in vlc
+ */
+
#ifdef __cplusplus
extern "C" {
#endif
#include <vlc_block.h>
+/**
+ * \file
+ * This file defines structures and functions for stream (between access and demux) descriptor in vlc
+ */
+
# ifdef __cplusplus
extern "C" {
# endif
VLC_EXPORT( void, stream_DemuxSend, ( stream_t *s, block_t *p_block ) );
VLC_EXPORT( void, stream_DemuxDelete,( stream_t *s ) );
-
#define stream_MemoryNew( a, b, c, d ) __stream_MemoryNew( VLC_OBJECT(a), b, c, d )
VLC_EXPORT( stream_t *,__stream_MemoryNew, (vlc_object_t *p_obj, uint8_t *p_buffer, int64_t i_size, bool i_preserve_memory ) );
#define stream_UrlNew( a, b ) __stream_UrlNew( VLC_OBJECT(a), b )
#ifndef VLC_STRINGS_H
#define VLC_STRINGS_H 1
+/**
+ * \file
+ * This file defines functions and structures handling misc strings
+ */
+
/**
* \defgroup strings Strings
* @{
#ifndef VLC_THREADS_H_
#define VLC_THREADS_H_
+/**
+ * \file
+ * This file defines structures and functions for handling threads in vlc
+ *
+ */
+
#if defined( UNDER_CE )
/* WinCE API */
#elif defined( WIN32 )
#ifndef VLC_TLS_H
# define VLC_TLS_H
+/**
+ * \file
+ * This file defines Transport Layer Security API (TLS) in vlc
+ */
+
# include <vlc_network.h>
typedef struct tls_server_sys_t tls_server_sys_t;
#ifndef VLC_UPDATE_H
#define VLC_UPDATE_H
+/**
+ * \file
+ * This file defines update API in vlc
+ */
+
/**
* \defgroup update Update
*
char* psz_desc; ///< Release description
};
-
#endif /* UPDATE_CHECK */
typedef struct update_release_t update_release_t;
#ifndef VLC_URL_H
# define VLC_URL_H
+/**
+ * \file
+ * This file defines functions for manipulating URL in vlc
+ */
+
struct vlc_url_t
{
char *psz_protocol;
url->psz_buffer = NULL;
}
-
static inline char *vlc_UrlEncode( const char *psz_url )
{
/* FIXME: do not encode / : ? and & _when_ not needed */
return 0; /* looks fine - but maybe it is not encoded */
}
-
#endif
#ifndef VLC_VARIABLES_H
#define VLC_VARIABLES_H 1
+/**
+ * \file
+ * This file defines functions and structures for dynamic variables in vlc
+ */
+
/**
* \defgroup variables Variables
*
#ifndef VLC_VLM_H
#define VLC_VLM_H 1
+/**
+ * \file
+ * This file defines VLM core functions and structures in vlc
+ */
+
#include <vlc_input.h>
+/**
+ * \defgroup server VLM
+ * VLM is the server core in vlc that allows streaming of multiple media streams
+ * at the same time. It provides broadcast, schedule and video on demand features
+ * for streaming using several streaming and network protocols.
+ * @{
+ */
+
/* VLM media */
typedef struct
{
}
#endif
+/**@}*/
+
#endif
#ifndef VLC_VOD_H
#define VLC_VOD_H 1
+/**
+ * \file
+ * This file defines an interface for VOD server modules in vlc
+ */
+
+/**
+ * \defgroup server Video On Demand (VOD)
+ * Video On Demand (VOD) functionality is provided from VLM.
+ * @{
+ */
+
struct vod_t
{
VLC_COMMON_MEMBERS
VOD_MEDIA_FORWARD, /* arg1= double res= */
};
+/**}*/
+
#endif
#ifndef VLC_VOUT_H_
#define VLC_VOUT_H_ 1
+/**
+ * \file
+ * This file defines common video output structures and functions in vlc
+ */
+
#include <vlc_es.h>
#include <vlc_filter.h>
#ifndef LIBVLCCORE_WINDOW_H
# define LIBVLCCORE_WINDOW_H 1
+/**
+ * \file
+ * This file defines functions and structures for output windows
+ */
+
# include <stdarg.h>
typedef struct vout_window_t vout_window_t;
#ifndef VLC_XML_H
#define VLC_XML_H
+/**
+ * \file
+ * This file defines functions and structures to handle xml tags in vlc
+ *
+ */
+
# ifdef __cplusplus
extern "C" {
# endif