Browsing support(3)

NAME
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