SigSlot::Signalv2< ParmType1, ParmType2 > Class Template Reference

#include <Signalv2ImplSerious.hxx>

List of all members.

Classes

struct  tCallback

Public Types

typedef CBL::Functor2
< ParmType1, ParmType2 > 
tCallbackType
typedef CBL::Functor2
< ParmType1, ParmType2 > 
tCallbackType
typedef tCallbackTypetCallbackPtr
typedef std::list< tCallbackPtrtCallList
typedef std::list
< tCallbackPtr >::iterator 
tCallIterator
typedef std::list< tCallbacktCallbackList
typedef std::list< tCallback >
::iterator 
tCbListIterator
typedef std::list< tCallback >
::const_iterator 
const_tCbListIterator

Public Member Functions

virtual ~Signalv2 ()
void Connect (Slotv2< ParmType1, ParmType2 > &slot)
void Emit (ParmType1 parm1, ParmType2 parm2)
void FreeConnection (Connection *pConnection)
 Removes a connection.
virtual ~Signalv2 ()
void Connect (Slotv2< ParmType1, ParmType2 > &slot)
void Emit (ParmType1 parm1, ParmType2 parm2)
void FreeConnection (Connection *pConnection)
 Removes a connection.

Protected Member Functions

void AddCallback (tConnectionId pConnection, Slot *slot, tCallbackType cb)
bool HasNoCallbacks () const
tCallListGetCalls ()
void RemoveCall (tConnectionId id)
void DestroyConnections ()

Detailed Description

template<typename ParmType1, typename ParmType2>
class SigSlot::Signalv2< ParmType1, ParmType2 >

Definition at line 35 of file Signalv2ImplSerious.hxx.


Member Typedef Documentation

template<typename ParmType1 , typename ParmType2 >
typedef std::list<tCallback>::const_iterator SigSlot::Signalv2< ParmType1, ParmType2 >::const_tCbListIterator

Definition at line 61 of file Signalv2ImplVC6.hxx.

template<typename ParmType1 , typename ParmType2 >
typedef std::list<tCallback> SigSlot::Signalv2< ParmType1, ParmType2 >::tCallbackList

Definition at line 59 of file Signalv2ImplVC6.hxx.

template<typename ParmType1 , typename ParmType2 >
typedef tCallbackType* SigSlot::Signalv2< ParmType1, ParmType2 >::tCallbackPtr

Definition at line 56 of file Signalv2ImplVC6.hxx.

template<typename ParmType1 , typename ParmType2 >
typedef CBL::Functor2<ParmType1,ParmType2> SigSlot::Signalv2< ParmType1, ParmType2 >::tCallbackType

Definition at line 40 of file Signalv2ImplVC6.hxx.

template<typename ParmType1 , typename ParmType2 >
typedef CBL::Functor2<ParmType1,ParmType2> SigSlot::Signalv2< ParmType1, ParmType2 >::tCallbackType

Definition at line 38 of file Signalv2ImplSerious.hxx.

template<typename ParmType1 , typename ParmType2 >
typedef std::list<tCallbackPtr >::iterator SigSlot::Signalv2< ParmType1, ParmType2 >::tCallIterator

Definition at line 58 of file Signalv2ImplVC6.hxx.

template<typename ParmType1 , typename ParmType2 >
typedef std::list<tCallbackPtr> SigSlot::Signalv2< ParmType1, ParmType2 >::tCallList

Definition at line 57 of file Signalv2ImplVC6.hxx.

template<typename ParmType1 , typename ParmType2 >
typedef std::list<tCallback>::iterator SigSlot::Signalv2< ParmType1, ParmType2 >::tCbListIterator

Definition at line 60 of file Signalv2ImplVC6.hxx.


Constructor & Destructor Documentation

template<typename ParmType1 , typename ParmType2 >
virtual SigSlot::Signalv2< ParmType1, ParmType2 >::~Signalv2 (  )  [inline, virtual]
template<typename ParmType1 , typename ParmType2 >
virtual SigSlot::Signalv2< ParmType1, ParmType2 >::~Signalv2 (  )  [inline, virtual]

Member Function Documentation

template<typename ParmType1 , typename ParmType2 >
void SigSlot::Signalv2< ParmType1, ParmType2 >::AddCallback ( tConnectionId  pConnection,
Slot slot,
tCallbackType  cb 
) [inline, protected]
template<typename ParmType1 , typename ParmType2 >
void SigSlot::Signalv2< ParmType1, ParmType2 >::Connect ( Slotv2< ParmType1, ParmType2 > &  slot  )  [inline]
template<typename ParmType1 , typename ParmType2 >
void SigSlot::Signalv2< ParmType1, ParmType2 >::Connect ( Slotv2< ParmType1, ParmType2 > &  slot  )  [inline]
template<typename ParmType1 , typename ParmType2 >
void SigSlot::Signalv2< ParmType1, ParmType2 >::DestroyConnections (  )  [inline, protected]
template<typename ParmType1 , typename ParmType2 >
void SigSlot::Signalv2< ParmType1, ParmType2 >::Emit ( ParmType1  parm1,
ParmType2  parm2 
) [inline]
template<typename ParmType1 , typename ParmType2 >
void SigSlot::Signalv2< ParmType1, ParmType2 >::Emit ( ParmType1  parm1,
ParmType2  parm2 
) [inline]
template<typename ParmType1 , typename ParmType2 >
void SigSlot::Signalv2< ParmType1, ParmType2 >::FreeConnection ( Connection conn  )  [inline, virtual]

Removes a connection.

Removes the given connections, so the Signal does not notify anymore the Slot behind that Connection.

Parameters:
conn The connection to be freed

Implements SigSlot::Signal.

Definition at line 156 of file Signalv2ImplVC6.hxx.

References SigSlot::Signal::FreeConnectionId(), SigSlot::Connection::GetID(), and SigSlot::Signalv2< ParmType1, ParmType2 >::RemoveCall().

template<typename ParmType1 , typename ParmType2 >
void SigSlot::Signalv2< ParmType1, ParmType2 >::FreeConnection ( Connection conn  )  [inline, virtual]

Removes a connection.

Removes the given connections, so the Signal does not notify anymore the Slot behind that Connection.

Parameters:
conn The connection to be freed

Implements SigSlot::Signal.

Definition at line 74 of file Signalv2ImplSerious.hxx.

References SigSlot::Signal::FreeConnectionId(), SigSlot::Connection::GetID(), and SigSlot::ConnectionHandler< SignalType >::RemoveCall().

template<typename ParmType1 , typename ParmType2 >
tCallList& SigSlot::Signalv2< ParmType1, ParmType2 >::GetCalls (  )  [inline, protected]

Definition at line 76 of file Signalv2ImplVC6.hxx.

Referenced by SigSlot::Signalv2< ParmType1, ParmType2 >::Emit().

template<typename ParmType1 , typename ParmType2 >
bool SigSlot::Signalv2< ParmType1, ParmType2 >::HasNoCallbacks (  )  const [inline, protected]

Definition at line 71 of file Signalv2ImplVC6.hxx.

Referenced by SigSlot::Signalv2< ParmType1, ParmType2 >::Emit().

template<typename ParmType1 , typename ParmType2 >
void SigSlot::Signalv2< ParmType1, ParmType2 >::RemoveCall ( tConnectionId  id  )  [inline, protected]

The documentation for this class was generated from the following files:
Generated by  doxygen 1.6.3