foobar2000 SDK  2015-08-03
Public Member Functions
packet_decoder_entry_impl_t< T >

#include <packet_decoder.h>

+ Inheritance diagram for packet_decoder_entry_impl_t< T >:

Public Member Functions

bool is_our_setup (const GUID &p_owner, t_size p_param1, const void *p_param2, t_size p_param2size)
 
void open (service_ptr_t< packet_decoder > &p_out, bool p_decode, const GUID &p_owner, t_size p_param1, const void *p_param2, t_size p_param2size, abort_callback &p_abort)
 
- Public Member Functions inherited from packet_decoder_entry
 FB2K_MAKE_SERVICE_INTERFACE_ENTRYPOINT (packet_decoder_entry)
 
- 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

template<class T>
class packet_decoder_entry_impl_t< T >

Definition at line 115 of file packet_decoder.h.

Member Function Documentation

template<class T >
bool packet_decoder_entry_impl_t< T >::is_our_setup ( const GUID p_owner,
t_size  p_param1,
const void *  p_param2,
t_size  p_param2size 
)
inlinevirtual

Implements packet_decoder_entry.

Definition at line 118 of file packet_decoder.h.

118  {
119  return T::g_is_our_setup(p_owner,p_param1,p_param2,p_param2size);
120  }
template<class T >
void packet_decoder_entry_impl_t< T >::open ( service_ptr_t< packet_decoder > &  p_out,
bool  p_decode,
const GUID p_owner,
t_size  p_param1,
const void *  p_param2,
t_size  p_param2size,
abort_callback p_abort 
)
inlinevirtual

Implements packet_decoder_entry.

Definition at line 121 of file packet_decoder.h.

121  {
122  assert(is_our_setup(p_owner,p_param1,p_param2,p_param2size));
123  service_ptr_t<T> instance = new service_impl_t<T>();
124  instance->open(p_owner,p_decode,p_param1,p_param2,p_param2size,p_abort);
125  p_out = instance.get_ptr();
126  }
Template implementing reference-counting features of service_base. Intended for dynamic instantiation...
Definition: service_impl.h:4
T * get_ptr() const
Definition: service.h:117
Autopointer class to be used with all services. Manages reference counter calls behind-the-scenes.
Definition: service.h:55
bool is_our_setup(const GUID &p_owner, t_size p_param1, const void *p_param2, t_size p_param2size)

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