foobar2000 SDK
2015-08-03
|
#include <input.h>
Public Member Functions | |
FB2K_MAKE_SERVICE_INTERFACE (input_info_reader, service_base) | |
virtual t_filestats | get_file_stats (abort_callback &p_abort)=0 |
virtual void | get_info (t_uint32 p_subsong, file_info &p_info, abort_callback &p_abort)=0 |
virtual t_uint32 | get_subsong (t_uint32 p_index)=0 |
virtual t_uint32 | get_subsong_count ()=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 () |
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 () | |
Class providing interface for retrieval of information (metadata, duration, replaygain, other tech infos) from files. Also see: file_info.
Instantiating: see input_entry.
Implementing: see input_impl.
input_info_reader::FB2K_MAKE_SERVICE_INTERFACE | ( | input_info_reader | , |
service_base | |||
) |
|
pure virtual |
Retrieves file stats. Equivalent to calling get_stats() on file object.
|
pure virtual |
Retrieves information about specified subsong.
p_subsong | Identifier of the subsong to query. See: input_info_reader::get_subsong(), playable_location. |
p_info | file_info object to fill. Must be empty on entry. |
p_abort | abort_callback object signaling user aborting the operation. |
Retrieves identifier of specified subsong; this identifier is meant to be used in playable_location as well as a parameter for input_info_reader::get_info().
p_index | Index of subsong to query. Must be >=0 and < get_subsong_count(). |
|
pure virtual |
Retrieves count of subsongs in the file. 1 for non-multisubsong-enabled inputs. Note: multi-subsong handling is disabled for remote files (see: filesystem::is_remote) for performance reasons. Remote files are always assumed to be single-subsong, with null index.