VLC
4.0.0-dev
|
Go to the source code of this file.
Typedefs | |
typedef struct input_preparser_t | input_preparser_t |
Preparser opaque structure. More... | |
Functions | |
input_preparser_t * | input_preparser_New (vlc_object_t *) |
This function creates the preparser object and thread. More... | |
void | input_preparser_Push (input_preparser_t *, input_item_t *, input_item_meta_request_option_t, const input_preparser_callbacks_t *cbs, void *cbs_userdata, int timeout, void *id) |
This function enqueues the provided item to be preparsed. More... | |
void | input_preparser_fetcher_Push (input_preparser_t *, input_item_t *, input_item_meta_request_option_t, const input_fetcher_callbacks_t *cbs, void *cbs_userdata) |
void | input_preparser_Cancel (input_preparser_t *, void *id) |
This function cancel all preparsing requests for a given id. More... | |
void | input_preparser_Delete (input_preparser_t *) |
This function destroys the preparser object and thread. More... | |
void | input_preparser_Deactivate (input_preparser_t *) |
This function deactivates the preparser. More... | |
typedef struct input_preparser_t input_preparser_t |
Preparser opaque structure.
The preparser object will retrieve the meta data of any given input item in an asynchronous way. It will also issue art fetching requests.
void input_preparser_Cancel | ( | input_preparser_t * | , |
void * | id | ||
) |
This function cancel all preparsing requests for a given id.
id | unique id given to input_preparser_Push() |
References background_worker_Cancel(), and input_preparser_t::worker.
Referenced by libvlc_MetadataCancel().
void input_preparser_Deactivate | ( | input_preparser_t * | ) |
This function deactivates the preparser.
All pending requests will be removed, and it will block until the currently running entity has finished (if any).
References background_worker_Cancel(), input_preparser_t::deactivated, and input_preparser_t::worker.
Referenced by libvlc_InternalCleanup().
void input_preparser_Delete | ( | input_preparser_t * | ) |
This function destroys the preparser object and thread.
All pending input items will be released.
References background_worker_Delete(), input_preparser_t::fetcher, input_fetcher_Delete(), and input_preparser_t::worker.
Referenced by libvlc_InternalCleanup().
void input_preparser_fetcher_Push | ( | input_preparser_t * | , |
input_item_t * | , | ||
input_item_meta_request_option_t | , | ||
const input_fetcher_callbacks_t * | cbs, | ||
void * | cbs_userdata | ||
) |
References input_preparser_t::fetcher, and input_fetcher_Push().
Referenced by libvlc_ArtRequest().
input_preparser_t* input_preparser_New | ( | vlc_object_t * | ) |
This function creates the preparser object and thread.
References background_worker_New(), input_preparser_t::deactivated, background_worker_config::default_timeout, input_preparser_t::fetcher, input_fetcher_New(), likely, msg_Warn, input_preparser_t::owner, PreparserCloseInput(), PreparserOpenInput(), PreparserProbeInput(), ReqHoldVoid(), ReqReleaseVoid(), unlikely, var_InheritInteger(), VLC_TICK_FROM_MS, and input_preparser_t::worker.
Referenced by libvlc_InternalInit().
void input_preparser_Push | ( | input_preparser_t * | , |
input_item_t * | , | ||
input_item_meta_request_option_t | , | ||
const input_preparser_callbacks_t * | cbs, | ||
void * | cbs_userdata, | ||
int | timeout, | ||
void * | id | ||
) |
This function enqueues the provided item to be preparsed.
The input item is retained until the preparsing is done or until the preparser object is deleted.
timeout | maximum time allowed to preparse the item. If -1, the default "preparse-timeout" option will be used as a timeout. If 0, it will wait indefinitely. If > 0, the timeout will be used (in milliseconds). |
id | unique id provided by the caller. This is can be used to cancel the request with input_preparser_Cancel() |
References input_item_t::b_net, input_item_t::b_preparse_interact, background_worker_Push(), input_preparser_req_t::cbs, input_preparser_t::deactivated, input_item_t::i_type, i_type, ITEM_PREPARSE_FAILED, ITEM_PREPARSE_SKIPPED, ITEM_TYPE_DIRECTORY, ITEM_TYPE_FILE, ITEM_TYPE_NODE, ITEM_TYPE_PLAYLIST, input_item_t::lock, META_REQUEST_OPTION_DO_INTERACT, META_REQUEST_OPTION_SCOPE_NETWORK, input_preparser_callbacks_t::on_preparse_ended, ReqCreate(), ReqRelease(), vlc_mutex_lock(), vlc_mutex_unlock(), and input_preparser_t::worker.
Referenced by vlc_MetadataRequest().