foobar2000 SDK
2015-08-03
|
#include <link_resolver.h>
Public Member Functions | |
FB2K_MAKE_SERVICE_INTERFACE_ENTRYPOINT (link_resolver) | |
virtual bool | is_our_path (const char *p_path, const char *p_extension)=0 |
virtual void | resolve (service_ptr_t< file > p_filehint, const char *p_path, pfc::string_base &p_out, abort_callback &p_abort)=0 |
Public Member Functions inherited from service_base | |
template<typename outPtr_t > | |
bool | cast (outPtr_t &outPtr) |
virtual int | service_add_ref ()=0 throw () |
virtual bool | service_query (service_ptr_t< service_base > &p_out, const GUID &p_guid) |
template<class T > | |
bool | service_query_t (service_ptr_t< T > &p_out) |
virtual int | service_release ()=0 throw () |
Static Public Member Functions | |
static bool | g_find (service_ptr_t< link_resolver > &p_out, const char *p_path) |
Additional Inherited Members | |
Public Types inherited from service_base | |
typedef service_base | t_interface |
Protected Member Functions inherited from service_base | |
service_base () | |
~service_base () | |
Interface for resolving different sorts of link files. Utilized by mechanisms that convert filesystem path into list of playable locations. For security reasons, link may only point to playable object path, not to a playlist or another link.
Definition at line 8 of file link_resolver.h.
link_resolver::FB2K_MAKE_SERVICE_INTERFACE_ENTRYPOINT | ( | link_resolver | ) |
|
static |
Helper function; finds link_resolver interface that supports specified link file.
p_out | Receives link_resolver interface on success. |
p_path | Path of file to query. |
Definition at line 3 of file link_resolver.cpp.
|
pure virtual |
Tests whether specified file is supported by this link_resolver service.
p_path | Path of file being queried. |
p_extension | Extension of file being queried. This is provided for performance reasons, path already includes it. |
|
pure virtual |
Resolves a link file. Before this is called, path must be accepted by is_our_path().
p_filehint | Optional file interface to use. If null/empty, implementation should open file by itself. |
p_path | Path of link file to resolve. |
p_out | Receives path the link is pointing to. |
p_abort | abort_callback object signaling user aborting the operation. |