foobar2000 SDK  2015-01-14
Public Member Functions
input_file_type_v2abstract

#include <input_file_type.h>

+ Inheritance diagram for input_file_type_v2:

Public Member Functions

virtual void get_extensions (unsigned idx, pfc::string_base &out)=0
 
virtual void get_format_name (unsigned idx, pfc::string_base &out, bool isPlural)=0
 
bool get_mask (unsigned idx, pfc::string_base &out)
 
bool get_name (unsigned idx, pfc::string_base &out)
 
- Public Member Functions inherited from input_file_type
 FB2K_MAKE_SERVICE_INTERFACE_ENTRYPOINT (input_file_type)
 
virtual unsigned get_count ()=0
 
virtual bool is_associatable (unsigned idx)=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
 
- Static Public Member Functions inherited from input_file_type
static void build_openfile_mask (pfc::string_base &out, bool b_include_playlists=true)
 
static void make_extension_support_fingerprint (pfc::string_base &str)
 
static void make_filetype_support_fingerprint (pfc::string_base &str)
 
- Protected Member Functions inherited from service_base
 service_base ()
 
 ~service_base ()
 

Detailed Description

Extended interface for registering media file types that can be associated with foobar2000 application in Windows shell.
Instead of implementing this directly, use DECLARE_FILE_TYPE() / DECLARE_FILE_TYPE_EX() macros.

Definition at line 21 of file input_file_type.h.

Member Function Documentation

virtual void input_file_type_v2::get_extensions ( unsigned  idx,
pfc::string_base out 
)
pure virtual

Implemented in input_file_type_v2_impl.

virtual void input_file_type_v2::get_format_name ( unsigned  idx,
pfc::string_base out,
bool  isPlural 
)
pure virtual

Implemented in input_file_type_v2_impl.

bool input_file_type_v2::get_mask ( unsigned  idx,
pfc::string_base out 
)
inlinevirtual

Implements input_file_type.

Definition at line 28 of file input_file_type.h.

28  {
29  pfc::string_formatter temp; get_extensions(idx,temp);
31  if (exts.get_count() == 0) return false;//should not happen
32  temp.reset();
33  for(pfc::const_iterator<pfc::string> walk = exts.first(); walk.is_valid(); ++walk) {
34  if (!temp.is_empty()) temp << ";";
35  temp << "*." << walk->get_ptr();
36  }
37  out = temp;
38  return true;
39  }
virtual void get_extensions(unsigned idx, pfc::string_base &out)=0
Differences between chain_list_v2_t<> and old chain_list_t<>: Iterators pointing to removed items as...
Definition: chain_list_v2.h:26
bool is_valid() const
Definition: iterators.h:24
t_size get_count() const
Definition: chain_list_v2.h:61
string8_fastalloc string_formatter
Definition: string_base.h:614
void splitStringSimple_toList(t_list &p_output, t_split p_split, const char *p_string, t_size p_stringLen=~0)
Definition: string_base.h:968
bool input_file_type_v2::get_name ( unsigned  idx,
pfc::string_base out 
)
inlinevirtual

Implements input_file_type.

Definition at line 27 of file input_file_type.h.

27 {get_format_name(idx, out, true); return true;}
virtual void get_format_name(unsigned idx, pfc::string_base &out, bool isPlural)=0

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