foobar2000 SDK
2015-01-14
|
#include <metadb.h>
Public Member Functions | |
virtual bool | apply_filter (metadb_handle_ptr p_location, t_filestats p_stats, file_info &p_info)=0 |
FB2K_MAKE_SERVICE_INTERFACE (file_info_filter, service_base) | |
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 () | |
Implementing this class gives you direct control over which part of file_info gets altered during a tag update uperation. To be used with metadb_io_v2::update_info_async().
|
pure virtual |
Alters specified file_info entry; called as a part of tag update process. Specified file_info has been read from a file, and will be written back.
WARNING: This will be typically called from another thread than main app thread (precisely, from thread created by tag updater). You should copy all relevant data to members of your file_info_filter instance in constructor and reference only member data in apply_filter() implementation.
Implemented in file_info_filter_impl.
file_info_filter::FB2K_MAKE_SERVICE_INTERFACE | ( | file_info_filter | , |
service_base | |||
) |