metadb_io Class Reference

#include <metadb.h>

Inheritance diagram for metadb_io:

service_base metadb_io_v2

List of all members.

Public Types

enum  t_load_info_type { load_info_default, load_info_force, load_info_check_if_changed }
enum  t_update_info_state { update_info_success, update_info_aborted, update_info_errors }
enum  t_load_info_state { load_info_success, load_info_aborted, load_info_errors }
typedef metadb_io t_interface_entrypoint
typedef metadb_io t_interface
typedef service_base t_interface_parent

Public Member Functions

virtual bool is_busy ()=0
 Returns whether some tag I/O operation is currently running. Another one can't be started.
virtual bool is_updating_disabled ()=0
 Returns whether - in result of user settings - all update operations will fail.
virtual bool is_file_updating_blocked ()=0
 Returns whether - in result of user settings - all update operations will silently succeed but without actually modifying files.
virtual void highlight_running_process ()=0
 If another tag I/O operation is running, this call will give focus to its progress window.
virtual t_load_info_state load_info_multi (const pfc::list_base_const_t< metadb_handle_ptr > &p_list, t_load_info_type p_type, HWND p_parent_window, bool p_show_errors)=0
 Loads tags from multiple items.
virtual t_update_info_state update_info_multi (const pfc::list_base_const_t< metadb_handle_ptr > &p_list, const pfc::list_base_const_t< file_info * > &p_new_info, HWND p_parent_window, bool p_show_errors)=0
 Updates tags on multiple items.
virtual t_update_info_state rewrite_info_multi (const pfc::list_base_const_t< metadb_handle_ptr > &p_list, HWND p_parent_window, bool p_show_errors)=0
 Rewrites tags on multiple items.
virtual t_update_info_state remove_info_multi (const pfc::list_base_const_t< metadb_handle_ptr > &p_list, HWND p_parent_window, bool p_show_errors)=0
 Removes tags from multiple items.
virtual void hint_multi (const pfc::list_base_const_t< metadb_handle_ptr > &p_list, const pfc::list_base_const_t< const file_info * > &p_infos, const pfc::list_base_const_t< t_filestats > &p_stats, const bit_array &p_fresh_mask)=0
virtual void hint_multi_async (const pfc::list_base_const_t< metadb_handle_ptr > &p_list, const pfc::list_base_const_t< const file_info * > &p_infos, const pfc::list_base_const_t< t_filestats > &p_stats, const bit_array &p_fresh_mask)=0
virtual void hint_reader (service_ptr_t< class input_info_reader > p_reader, const char *p_path, abort_callback &p_abort)=0
virtual void path_to_handles_simple (const char *p_path, pfc::list_base_t< metadb_handle_ptr > &p_out)=0
 For internal use only.
virtual void dispatch_refresh (const pfc::list_base_const_t< metadb_handle_ptr > &p_list)=0
 Dispatches metadb_io_callback calls with specified items. To be used with metadb_display_hook when your component needs specified items refreshed.
void hint_async (metadb_handle_ptr p_item, const file_info &p_info, const t_filestats &p_stats, bool p_fresh)
t_load_info_state load_info (metadb_handle_ptr p_item, t_load_info_type p_type, HWND p_parent_window, bool p_show_errors)
t_update_info_state update_info (metadb_handle_ptr p_item, file_info &p_info, HWND p_parent_window, bool p_show_errors)

Static Public Attributes

static const GUID class_guid


Detailed Description

API for tag read/write operations. Legal to call from main thread only, except for hint_multi_async() / hint_async().
Implemented only by core, do not reimplement.
Use static_api_ptr_t template to access metadb_io methods.
WARNING: Methods that perform file access (tag reads/writes) run a modal message loop. They SHOULD NOT be called from global callbacks and such.

Member Typedef Documentation

Reimplemented from service_base.

Reimplemented in metadb_io_v2.

Reimplemented in metadb_io_v2.


Member Enumeration Documentation

Enumerator:
load_info_default 
load_info_force 
load_info_check_if_changed 

Enumerator:
update_info_success 
update_info_aborted 
update_info_errors 

Enumerator:
load_info_success 
load_info_aborted 
load_info_errors 


Member Function Documentation

virtual bool metadb_io::is_busy (  )  [pure virtual]

Returns whether some tag I/O operation is currently running. Another one can't be started.

virtual bool metadb_io::is_updating_disabled (  )  [pure virtual]

Returns whether - in result of user settings - all update operations will fail.

virtual bool metadb_io::is_file_updating_blocked (  )  [pure virtual]

Returns whether - in result of user settings - all update operations will silently succeed but without actually modifying files.

virtual void metadb_io::highlight_running_process (  )  [pure virtual]

If another tag I/O operation is running, this call will give focus to its progress window.

virtual t_load_info_state metadb_io::load_info_multi ( const pfc::list_base_const_t< metadb_handle_ptr > &  p_list,
t_load_info_type  p_type,
HWND  p_parent_window,
bool  p_show_errors 
) [pure virtual]

Loads tags from multiple items.

virtual t_update_info_state metadb_io::update_info_multi ( const pfc::list_base_const_t< metadb_handle_ptr > &  p_list,
const pfc::list_base_const_t< file_info * > &  p_new_info,
HWND  p_parent_window,
bool  p_show_errors 
) [pure virtual]

Updates tags on multiple items.

virtual t_update_info_state metadb_io::rewrite_info_multi ( const pfc::list_base_const_t< metadb_handle_ptr > &  p_list,
HWND  p_parent_window,
bool  p_show_errors 
) [pure virtual]

Rewrites tags on multiple items.

virtual t_update_info_state metadb_io::remove_info_multi ( const pfc::list_base_const_t< metadb_handle_ptr > &  p_list,
HWND  p_parent_window,
bool  p_show_errors 
) [pure virtual]

Removes tags from multiple items.

virtual void metadb_io::hint_multi ( const pfc::list_base_const_t< metadb_handle_ptr > &  p_list,
const pfc::list_base_const_t< const file_info * > &  p_infos,
const pfc::list_base_const_t< t_filestats > &  p_stats,
const bit_array p_fresh_mask 
) [pure virtual]

virtual void metadb_io::hint_multi_async ( const pfc::list_base_const_t< metadb_handle_ptr > &  p_list,
const pfc::list_base_const_t< const file_info * > &  p_infos,
const pfc::list_base_const_t< t_filestats > &  p_stats,
const bit_array p_fresh_mask 
) [pure virtual]

virtual void metadb_io::hint_reader ( service_ptr_t< class input_info_reader p_reader,
const char *  p_path,
abort_callback &  p_abort 
) [pure virtual]

virtual void metadb_io::path_to_handles_simple ( const char *  p_path,
pfc::list_base_t< metadb_handle_ptr > &  p_out 
) [pure virtual]

For internal use only.

virtual void metadb_io::dispatch_refresh ( const pfc::list_base_const_t< metadb_handle_ptr > &  p_list  )  [pure virtual]

Dispatches metadb_io_callback calls with specified items. To be used with metadb_display_hook when your component needs specified items refreshed.

void metadb_io::hint_async ( metadb_handle_ptr  p_item,
const file_info p_info,
const t_filestats &  p_stats,
bool  p_fresh 
)

t_load_info_state metadb_io::load_info ( metadb_handle_ptr  p_item,
t_load_info_type  p_type,
HWND  p_parent_window,
bool  p_show_errors 
)

t_update_info_state metadb_io::update_info ( metadb_handle_ptr  p_item,
file_info p_info,
HWND  p_parent_window,
bool  p_show_errors 
)


Member Data Documentation

const GUID metadb_io::class_guid [static]

Initial value:

{ 0x64d18b80, 0x5e97, 0x40e4, { 0xa3, 0xc, 0xa4, 0x64, 0xc, 0x60, 0xbc, 0xe5 } }

Reimplemented in metadb_io_v2.


The documentation for this class was generated from the following files:

Generated on Fri Apr 18 13:56:53 2008 for foobar2000 SDK by  doxygen 1.5.5