Go to the documentation of this file.
21 #ifndef HAVE_INPUT_PLUGIN_H
22 #define HAVE_INPUT_PLUGIN_H
24 #include <sys/types.h>
33 #define INPUT_PLUGIN_IFACE_VERSION 18
73 const char *
const * (*get_autoplay_list) (
input_class_t *this_gen,
int *num_files);
88 #define default_input_class_dispose (void (*) (input_class_t *this_gen))free
239 #define INPUT_CAP_NOCAP 0x00000000
250 #define INPUT_CAP_SEEKABLE 0x00000001
260 #define INPUT_CAP_BLOCK 0x00000002
272 #define INPUT_CAP_AUDIOLANG 0x00000008
273 #define INPUT_CAP_SPULANG 0x00000010
287 #define INPUT_CAP_PREVIEW 0x00000040
298 #define INPUT_CAP_CHAPTERS 0x00000080
306 #define INPUT_CAP_RIP_FORBIDDEN 0x00000100
312 #define INPUT_CAP_NO_CACHE 0x00000200
318 #define INPUT_CAP_CLONE 0x00000400
331 #define INPUT_CAP_SLOW_SEEKABLE 0x00000800
333 #define INPUT_IS_SEEKABLE(input) (((input)->get_capabilities(input) & INPUT_CAP_SEEKABLE) != 0)
334 #define INPUT_IS_SLOW_SEEKABLE(input) (((input)->get_capabilities(input) & (INPUT_CAP_SEEKABLE | INPUT_CAP_SLOW_SEEKABLE)) != 0)
341 #define INPUT_CAP_SIZED_PREVIEW 0x00001000
347 #define INPUT_CAP_TIME_SEEKABLE 0x00002000
354 #define INPUT_CAP_NEW_MRL 0x00004000
361 #define INPUT_CAP_LIVE 0x00008000
363 #define INPUT_OPTIONAL_UNSUPPORTED 0
364 #define INPUT_OPTIONAL_SUCCESS 1
366 #define INPUT_OPTIONAL_DATA_AUDIOLANG 2
367 #define INPUT_OPTIONAL_DATA_SPULANG 3
368 #define INPUT_OPTIONAL_DATA_PREVIEW 7
371 #define INPUT_OPTIONAL_DATA_MIME_TYPE 8
373 #define INPUT_OPTIONAL_DATA_DEMUX_MIME_TYPE 9
375 #define INPUT_OPTIONAL_DATA_DEMUXER 10
377 #define INPUT_OPTIONAL_DATA_CLONE 11
379 #define INPUT_OPTIONAL_DATA_SIZED_PREVIEW 12
381 #define INPUT_OPTIONAL_DATA_DURATION 13
385 #define INPUT_OPTIONAL_DATA_NEW_MRL 14
387 #define MAX_MRL_ENTRIES 255
388 #define MAX_PREVIEW_SIZE 4096
397 #define mrl_unknown (0 << 0)
398 #define mrl_dvd (1 << 0)
399 #define mrl_vcd (1 << 1)
400 #define mrl_net (1 << 2)
401 #define mrl_rtp (1 << 3)
402 #define mrl_stdin (1 << 4)
403 #define mrl_cda (1 << 5)
404 #define mrl_file (1 << 6)
405 #define mrl_file_fifo (1 << 7)
406 #define mrl_file_chardev (1 << 8)
407 #define mrl_file_directory (1 << 9)
408 #define mrl_file_blockdev (1 << 10)
409 #define mrl_file_normal (1 << 11)
410 #define mrl_file_symlink (1 << 12)
411 #define mrl_file_sock (1 << 13)
412 #define mrl_file_exec (1 << 14)
413 #define mrl_file_backup (1 << 15)
414 #define mrl_file_hidden (1 << 16)
419 #define MRL_ZERO(m) { \
424 (m)->origin = NULL; \
428 (m)->size = (off_t) 0; \
435 #define MRL_DUPLICATE(s, d) { \
436 _x_assert((s) != NULL); \
437 _x_assert((d) != NULL); \
440 (d)->origin = (s)->origin ? strdup((s)->origin) : NULL; \
443 (d)->mrl = (s)->mrl ? strdup((s)->mrl) : NULL; \
446 (d)->link = (s)->link ? strdup((s)->link) : NULL; \
448 (d)->type = (s)->type; \
449 (d)->size = (s)->size; \
455 #define MRLS_DUPLICATE(s, d) { \
458 _x_assert((s) != NULL); \
459 _x_assert((d) != NULL); \
461 while((s) != NULL) { \
462 d[i] = (xine_mrl_t *) malloc(sizeof(xine_mrl_t)); \
463 MRL_DUPLICATE(s[i], d[i]); \
Definition: xine_internal.h:123
Definition: net_buf_ctrl.c:72
#define XINE_USED
Definition: attributes.h:58
xine_stream_t * stream
Definition: net_buf_ctrl.c:74
#define XINE_PROTECTED
Definition: attributes.h:73
Definition: plugin_catalog.h:44