xine-lib 1.2.13-20230125hg15249
Data Structures | Macros | Functions | Variables
input_vcd.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <unistd.h>
#include <errno.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <sys/param.h>
#include <string.h>
#include <netinet/in.h>
#include <xine/xine_internal.h>
#include <xine/xineutils.h>
#include <xine/input_plugin.h>
#include "media_helper.h"
#include "input_helper.h"

Data Structures

struct  cdsector_t
 
struct  vcd_input_class_t
 
struct  vcd_input_plugin_t
 

Macros

#define CDROM   "/dev/cdrom"
 
#define VCDSECTORSIZE   2324
 

Functions

static void device_change_cb (void *data, xine_cfg_entry_t *cfg)
 
static off_t vcd_plugin_get_current_pos (input_plugin_t *this_gen)
 
static uint32_t vcd_plugin_get_capabilities (input_plugin_t *this_gen)
 
static uint32_t vcd_plugin_get_blocksize (input_plugin_t *this_gen)
 
static void vcd_plugin_dispose (input_plugin_t *this_gen)
 
static const char * vcd_plugin_get_mrl (input_plugin_t *this_gen)
 
static int vcd_plugin_get_optional_data (input_plugin_t *this_gen, void *data, int data_type)
 
static int vcd_plugin_open (input_plugin_t *this_gen)
 
static input_plugin_tvcd_class_get_instance (input_class_t *cls_gen, xine_stream_t *stream, const char *mrl)
 
static void vcd_filelist_dispose (vcd_input_class_t *this)
 
static void vcd_class_dispose (input_class_t *this_gen)
 
static int vcd_class_eject_media (input_class_t *this_gen)
 
static xine_mrl_t ** vcd_class_get_dir (input_class_t *this_gen, const char *filename, int *num_files)
 
static const char *const * vcd_class_get_autoplay_list (input_class_t *this_gen, int *num_files)
 
static void * init_class (xine_t *xine, const void *data)
 

Variables

const plugin_info_t xine_plugin_info[] EXPORTED
 

Macro Definition Documentation

◆ CDROM

#define CDROM   "/dev/cdrom"

Referenced by init_class().

◆ VCDSECTORSIZE

#define VCDSECTORSIZE   2324

Function Documentation

◆ device_change_cb()

static void device_change_cb ( void * data,
xine_cfg_entry_t * cfg )
static

References xine_cfg_entry_s::str_value.

Referenced by init_class().

◆ init_class()

static void * init_class ( xine_t * xine,
const void * data )
static

◆ vcd_class_dispose()

static void vcd_class_dispose ( input_class_t * this_gen)
static

◆ vcd_class_eject_media()

static int vcd_class_eject_media ( input_class_t * this_gen)
static

References media_eject_media().

Referenced by init_class().

◆ vcd_class_get_autoplay_list()

static const char *const * vcd_class_get_autoplay_list ( input_class_t * this_gen,
int * num_files )
static

◆ vcd_class_get_dir()

static xine_mrl_t ** vcd_class_get_dir ( input_class_t * this_gen,
const char * filename,
int * num_files )
static

◆ vcd_class_get_instance()

static input_plugin_t * vcd_class_get_instance ( input_class_t * cls_gen,
xine_stream_t * stream,
const char * mrl )
static

◆ vcd_filelist_dispose()

static void vcd_filelist_dispose ( vcd_input_class_t * this)
static

References _x_freep(), and NULL.

Referenced by vcd_class_dispose(), and vcd_class_get_autoplay_list().

◆ vcd_plugin_dispose()

static void vcd_plugin_dispose ( input_plugin_t * this_gen)
static

Referenced by vcd_class_get_instance().

◆ vcd_plugin_get_blocksize()

static uint32_t vcd_plugin_get_blocksize ( input_plugin_t * this_gen)
static

References VCDSECTORSIZE.

Referenced by vcd_class_get_instance().

◆ vcd_plugin_get_capabilities()

static uint32_t vcd_plugin_get_capabilities ( input_plugin_t * this_gen)
static

◆ vcd_plugin_get_current_pos()

static off_t vcd_plugin_get_current_pos ( input_plugin_t * this_gen)
static

References vcd_plugin_seek().

Referenced by vcd_class_get_instance().

◆ vcd_plugin_get_mrl()

static const char * vcd_plugin_get_mrl ( input_plugin_t * this_gen)
static

Referenced by vcd_class_get_instance().

◆ vcd_plugin_get_optional_data()

static int vcd_plugin_get_optional_data ( input_plugin_t * this_gen,
void * data,
int data_type )
static

◆ vcd_plugin_open()

static int vcd_plugin_open ( input_plugin_t * this_gen)
static

Variable Documentation

◆ EXPORTED

const plugin_info_t xine_plugin_info [] EXPORTED
Initial value:
= {
{ PLUGIN_NONE, 0, NULL, 0, NULL, NULL }
}
static void * init_class(xine_t *xine, const void *data)
Definition input_vcd.c:1066
#define XINE_VERSION_CODE
Definition xine_internal.h:57
NULL
Definition xine_plugin.c:78
#define PLUGIN_NONE
Definition xine_plugin.h:29
#define PLUGIN_MUST_PRELOAD
Definition xine_plugin.h:46
#define PLUGIN_INPUT
Definition xine_plugin.h:30