foobar2000 SDK  2015-01-14
Public Member Functions
input_info_writerabstract

#include <input.h>

+ Inheritance diagram for input_info_writer:

Public Member Functions

virtual void commit (abort_callback &p_abort)=0
 
 FB2K_MAKE_SERVICE_INTERFACE (input_info_writer, input_info_reader)
 
virtual void set_info (t_uint32 p_subsong, const file_info &p_info, abort_callback &p_abort)=0
 
- Public Member Functions inherited from input_info_reader
 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 ()
 

Detailed Description

Class providing interface for writing metadata and replaygain info to files. Also see: file_info.
Instantiating: see input_entry.
Implementing: see input_impl.

Definition at line 123 of file input.h.

Member Function Documentation

virtual void input_info_writer::commit ( abort_callback p_abort)
pure virtual

Commits pending updates. In case of multisubsong inputs, set_info should queue the update and perform actual file access in commit(). Otherwise, actual writing can be done in set_info() and then Commit() can just do nothing and always succeed.

Parameters
p_abortabort_callback object signaling user aborting the operation. WARNING: abort_callback object is provided for consistency; if writing tags actually gets aborted, user will be likely left with corrupted file. Anything calling this should make sure that aborting is either impossible, or gives appropriate warning to the user first.
input_info_writer::FB2K_MAKE_SERVICE_INTERFACE ( input_info_writer  ,
input_info_reader   
)
virtual void input_info_writer::set_info ( t_uint32  p_subsong,
const file_info p_info,
abort_callback p_abort 
)
pure virtual

Tells the service to update file tags with new info for specified subsong.

Parameters
p_subsongSubsong to update. Should be always 0 for non-multisubsong-enabled inputs.
p_infoNew info to write. Sometimes not all contents of p_info can be written. Caller will typically read info back after successful write, so e.g. tech infos that change with retag are properly maintained.
p_abortabort_callback object signaling user aborting the operation. WARNING: abort_callback object is provided for consistency; if writing tags actually gets aborted, user will be likely left with corrupted file. Anything calling this should make sure that aborting is either impossible, or gives appropriate warning to the user first.

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