foobar2000 SDK  2015-08-03
Public Member Functions | Private Attributes
CF::_inMainThread< obj_t, arg_t >

#include <CallForwarder.h>

+ Inheritance diagram for CF::_inMainThread< obj_t, arg_t >:

Public Member Functions

 _inMainThread (obj_t const &obj, const arg_t &arg)
 
void callback_run ()
 
- Public Member Functions inherited from main_thread_callback
void callback_enqueue ()
 
 FB2K_MAKE_SERVICE_INTERFACE (main_thread_callback, 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 ()
 

Private Attributes

arg_t m_arg
 
obj_t m_obj
 

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<typename obj_t, typename arg_t>
class CF::_inMainThread< obj_t, arg_t >

Definition at line 2 of file CallForwarder.h.

Constructor & Destructor Documentation

template<typename obj_t , typename arg_t >
CF::_inMainThread< obj_t, arg_t >::_inMainThread ( obj_t const &  obj,
const arg_t &  arg 
)
inline

Definition at line 4 of file CallForwarder.h.

4 : m_obj(obj), m_arg(arg) {}

Member Function Documentation

template<typename obj_t , typename arg_t >
void CF::_inMainThread< obj_t, arg_t >::callback_run ( )
inlinevirtual

Gets called from main app thread. See main_thread_callback_manager description for more info.

Implements main_thread_callback.

Definition at line 6 of file CallForwarder.h.

6  {
7  if (m_obj.IsValid()) callInMainThread::callThis(&*m_obj, m_arg);
8  }
static void callThis(host_t *host, param_t &param)

Field Documentation

template<typename obj_t , typename arg_t >
arg_t CF::_inMainThread< obj_t, arg_t >::m_arg
private

Definition at line 11 of file CallForwarder.h.

template<typename obj_t , typename arg_t >
obj_t CF::_inMainThread< obj_t, arg_t >::m_obj
private

Definition at line 10 of file CallForwarder.h.


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