XINE, A Free Video Player Project - API reference

Main Page Modules Data Structures File List Data Fields Globals

# Browsing support

## Modules
Types of available mrls
## Data Structures
struct | mrl_t
struct | mrl_t
## Defines
#define | MRL_ZERO(m)
#define | MRL_DUPLICATE(s, d)
#define | MRLS_DUPLICATE(s, d)
## Functions
char** | xine_get_browsable_input_plugin_ids (xine_t *self)
| Request list of browsable featured plugins.
mrl_t** | xine_get_browse_mrls (xine_t *self, char *plugin_id, char *start_mrl, int *num_mrls)
| Request available MRLs from plugins.

## Define Documentation

#define MRLS_DUPLICATE( | s, d )

| Value:
      {                                                \
      int i = 0;                                                                  \
                                                                                  \
      assert((s) != NULL);                                                        \
      assert((d) != NULL);                                                        \
                                                                                  \
      while((s) != NULL) {                                                        \
        d[i] = (mrl_t *) malloc(sizeof(mrl_t));                                   \
        MRL_DUPLICATE(s[i], d[i]);                                                \
        i++;                                                                      \
      }                                                                           \
    }
Duplicate two arrays of mrls (s = source, d = destination). See also: mrl_t, xine_get_browse_mrls()

#define MRL_DUPLICATE( | s, d )

| Duplicate two mrls entries (s = source, d = destination). See also: mrl_t, xine_get_browse_mrls()

#define MRL_ZERO( | m )

| Value:
      {                                                         \
      if((m)) {                                                                   \
        if((m)->origin)                                                           \
          free((m)->origin);                                                      \
        if((m)->mrl)                                                              \
          free((m)->mrl);                                                         \
        if((m)->link)                                                             \
          free((m)->link);                                                        \
        (m)->origin = NULL;                                                       \
        (m)->mrl    = NULL;                                                       \
        (m)->link   = NULL;                                                       \
        (m)->type   = 0;                                                          \
        (m)->size   = (off_t) 0;                                                  \
      }                                                                           \
    }
Freeing/zeroing all of entries of given mrl. See also: mrl_t, xine_get_browse_mrls()

## Function Documentation

char ** xine_get_browsable_input_plugin_ids ( | xine_t * self )

  | Request list of browsable featured plugins. Parameters:
  self | Current xine engine configuration ( see xine_init() )
  Returns: List of plugins Some input plugins are browseable, get the list of ids of these plugins. Parameters:
  self |

mrl_t ** xine_get_browse_mrls ( | xine_t * self,
| char * plugin_id,
| char * start_mrl,
| int * num_mrls )

  | Request available MRLs from plugins. Parameters:
  self | Current xine engine configuration ( see xine_init() )
  plugin_id | Plugin name ( see xine_get_browsable_input_plugin_ids() )
  start_mrl | MRL
  num_mrl | how many mrls was found
  Returns: start_mrl on success, NULL on failure. Asks input plugin named <plugin_id> to return a list of available MRLs in domain/directory <start_mrl>. <start_mrl> may be NULL indicating the toplevel domain/dir returns <start_mrl> if <start_mrl> is a valid MRL, not a directory returns NULL if <start_mrl> is an invalid MRL, not even a directory. Parameters:
  self |
  plugin_id |
  start_mrl |
  num_mrls |