foobar2000 SDK
2015-08-03
|
#include <input_impl.h>
Public Member Functions | |
void | get_extended_data (service_ptr_t< file > p_filehint, const playable_location &p_location, const GUID &p_guid, mem_block_container &p_out, abort_callback &p_abort) |
unsigned | get_flags () |
bool | is_our_content_type (const char *p_type) |
bool | is_our_path (const char *p_full_path, const char *p_extension) |
void | open_for_decoding (service_ptr_t< input_decoder > &p_instance, service_ptr_t< file > p_filehint, const char *p_path, abort_callback &p_abort) |
void | open_for_info_read (service_ptr_t< input_info_reader > &p_instance, service_ptr_t< file > p_filehint, const char *p_path, abort_callback &p_abort) |
void | open_for_info_write (service_ptr_t< input_info_writer > &p_instance, service_ptr_t< file > p_filehint, const char *p_path, abort_callback &p_abort) |
![]() | |
bool | are_parallel_reads_slow () |
FB2K_MAKE_SERVICE_INTERFACE_ENTRYPOINT (input_entry) | |
bool | is_redirect () |
void | open (service_ptr_t< input_decoder > &p_instance, service_ptr_t< file > const &p_filehint, const char *p_path, abort_callback &p_abort) |
void | open (service_ptr_t< input_info_reader > &p_instance, service_ptr_t< file > const &p_filehint, const char *p_path, abort_callback &p_abort) |
void | open (service_ptr_t< input_info_writer > &p_instance, service_ptr_t< file > const &p_filehint, const char *p_path, abort_callback &p_abort) |
![]() | |
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 () |
Private Member Functions | |
template<typename T , typename out > | |
void | instantiate_t (service_ptr_t< out > &p_instance, service_ptr_t< file > p_filehint, const char *p_path, t_input_open_reason p_reason, abort_callback &p_abort) |
Additional Inherited Members | |
![]() | |
enum | { flag_redirect = 1, flag_parallel_reads_slow = 2 } |
![]() | |
typedef service_base | t_interface |
![]() | |
static bool | g_find_service_by_content_type (service_ptr_t< input_entry > &p_out, const char *p_content_type) |
static bool | g_find_service_by_path (service_ptr_t< input_entry > &p_out, const char *p_path) |
static bool | g_find_service_by_path (service_ptr_t< input_entry > &p_out, const char *p_path, const char *p_ext) |
static bool | g_is_supported_path (const char *p_path) |
static void | g_open_for_decoding (service_ptr_t< input_decoder > &p_instance, service_ptr_t< file > p_filehint, const char *p_path, abort_callback &p_abort, bool p_from_redirect=false) |
static void | g_open_for_info_read (service_ptr_t< input_info_reader > &p_instance, service_ptr_t< file > p_filehint, const char *p_path, abort_callback &p_abort, bool p_from_redirect=false) |
static void | g_open_for_info_write (service_ptr_t< input_info_writer > &p_instance, service_ptr_t< file > p_filehint, const char *p_path, abort_callback &p_abort, bool p_from_redirect=false) |
static void | g_open_for_info_write_timeout (service_ptr_t< input_info_writer > &p_instance, service_ptr_t< file > p_filehint, const char *p_path, abort_callback &p_abort, double p_timeout, bool p_from_redirect=false) |
![]() | |
service_base () | |
~service_base () | |
Helper; standard input_entry implementation. Do not instantiate this directly, use input_factory_t or one of other input_*_factory_t helpers instead.
Definition at line 292 of file input_impl.h.
|
inlinevirtual |
Reserved for future use. Do nothing and return until specifications are finalized.
Implements input_entry.
Definition at line 320 of file input_impl.h.
|
inlinevirtual |
|
inlineprivate |
Definition at line 297 of file input_impl.h.
|
inlinevirtual |
Determines whether specified content type can be handled by this input.
p_type | Content type string to test. |
Implements input_entry.
Definition at line 305 of file input_impl.h.
|
inlinevirtual |
Determines whether specified file type can be handled by this input. This must not use any kind of file access; the result should be only based on file path / extension.
p_full_path | Full URL of file being tested. |
p_extension | Extension of file being tested, provided by caller for performance reasons. |
Implements input_entry.
Definition at line 306 of file input_impl.h.
|
inlinevirtual |
Opens specified resource for decoding.
p_instance | Receives new input_decoder instance if successful. |
p_filehint | Optional; passes file object to use for the operation; if set to null, the service will handle opening file by itself. Note that not all inputs operate on physical files that can be reached through filesystem API, some of them require this parameter to be set to null (tone and silence generators for an example). |
p_path | URL of resource being opened. |
p_abort | abort_callback object signaling user aborting the operation. |
Implements input_entry.
Definition at line 308 of file input_impl.h.
|
inlinevirtual |
Opens specified file for reading info.
p_instance | Receives new input_info_reader instance if successful. |
p_filehint | Optional; passes file object to use for the operation; if set to null, the service will handle opening file by itself. Note that not all inputs operate on physical files that can be reached through filesystem API, some of them require this parameter to be set to null (tone and silence generators for an example). |
p_path | URL of resource being opened. |
p_abort | abort_callback object signaling user aborting the operation. |
Implements input_entry.
Definition at line 312 of file input_impl.h.
|
inlinevirtual |
Opens specified file for writing info.
p_instance | Receives new input_info_writer instance if successful. |
p_filehint | Optional; passes file object to use for the operation; if set to null, the service will handle opening file by itself. Note that not all inputs operate on physical files that can be reached through filesystem API, some of them require this parameter to be set to null (tone and silence generators for an example). |
p_path | URL of resource being opened. |
p_abort | abort_callback object signaling user aborting the operation. |
Implements input_entry.
Definition at line 316 of file input_impl.h.