sigx++  2.0.1
Public Types | Public Member Functions | Static Public Member Functions | Data Fields
sigx::signal_source_func< T_functor, T_signal > Struct Template Reference

signal source is a signal of type T_signal returned by a functor. More...

#include <signal_source_func.h>

Inheritance diagram for sigx::signal_source_func< T_functor, T_signal >:
sigx::signal_source_base sigx::operator_new

Public Types

typedef signal_source_func
< T_functor, T_signal > 
self_type
 
typedef sigc::functor_trait
< T_functor >::functor_type 
functor_type
 
- Public Types inherited from sigx::signal_source_base
typedef void(* hook )()
 An untyped function pointer. More...
 

Public Member Functions

 signal_source_func (const T_functor &_A_func)
 
- Public Member Functions inherited from sigx::signal_source_base
virtual ~signal_source_base ()
 
hook getter () const
 
- Public Member Functions inherited from sigx::operator_new
void * operator new (std::size_t size)
 
void operator delete (void *p)
 
void * operator new[] (std::size_t size)
 
void operator delete[] (void *p)
 

Static Public Member Functions

static T_signal get_signal (signal_source_ptr base)
 

Data Fields

functor_type m_func
 

Additional Inherited Members

- Protected Member Functions inherited from sigx::signal_source_base
 signal_source_base (hook _A_getter)
 
- Protected Attributes inherited from sigx::signal_source_base
hook m_getter
 

Detailed Description

template<typename T_functor, typename T_signal>
struct sigx::signal_source_func< T_functor, T_signal >

signal source is a signal of type T_signal returned by a functor.

Note
First I had the idea to use a slot to store the functor instead of storing the functor itself. But a slot has one caveat: It expects T_signal to be default constructable (T_signal()), see sigc::slotN::operator (). Not all signals have a default constructor, e.g. Glib signals like SignalIdle.

Member Typedef Documentation

template<typename T_functor , typename T_signal >
typedef sigc::functor_trait<T_functor>::functor_type sigx::signal_source_func< T_functor, T_signal >::functor_type
template<typename T_functor , typename T_signal >
typedef signal_source_func<T_functor, T_signal> sigx::signal_source_func< T_functor, T_signal >::self_type

Constructor & Destructor Documentation

template<typename T_functor , typename T_signal >
sigx::signal_source_func< T_functor, T_signal >::signal_source_func ( const T_functor &  _A_func)
inline

Member Function Documentation

template<typename T_functor , typename T_signal >
static T_signal sigx::signal_source_func< T_functor, T_signal >::get_signal ( signal_source_ptr  base)
inlinestatic

Field Documentation

template<typename T_functor , typename T_signal >
functor_type sigx::signal_source_func< T_functor, T_signal >::m_func

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