Back to index

extremetuxracer  0.5beta
Public Types | Public Member Functions | Private Attributes
pp::Slot2< T, R1, R2 > Class Template Reference

#include <signal.h>

Inheritance diagram for pp::Slot2< T, R1, R2 >:
Inheritance graph
[legend]
Collaboration diagram for pp::Slot2< T, R1, R2 >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef void(T::* SlotPtr_t )(R1, R2)

Public Member Functions

 Slot2 (T *rcv, SlotPtr_t sl)
 ~Slot2 ()
void Call (BaseArgument *arg)

Private Attributes

T * mRcv
SlotPtr_t mSlot

Detailed Description

template<class T, class R1, class R2>
class pp::Slot2< T, R1, R2 >

Definition at line 141 of file signal.h.


Member Typedef Documentation

template<class T, class R1, class R2>
typedef void(T::* pp::Slot2< T, R1, R2 >::SlotPtr_t)(R1, R2)

Definition at line 143 of file signal.h.


Constructor & Destructor Documentation

template<class T, class R1, class R2>
pp::Slot2< T, R1, R2 >::Slot2 ( T *  rcv,
SlotPtr_t  sl 
) [inline]

Definition at line 144 of file signal.h.

       {
              mRcv = rcv;
              mSlot = sl;
       }
template<class T, class R1, class R2>
pp::Slot2< T, R1, R2 >::~Slot2 ( ) [inline]

Definition at line 149 of file signal.h.

{ }

Member Function Documentation

template<class T, class R1, class R2>
void pp::Slot2< T, R1, R2 >::Call ( BaseArgument arg) [inline, virtual]

Implements pp::BaseSlot.

Definition at line 151 of file signal.h.

       {
              if (arg->Count() == 2) {
                     Argument2<R1,R2> *a1 = static_cast<Argument2<R1,R2>* >(arg);
                     if (arg) (*mRcv.*mSlot)(a1->Arg1(),a1->Arg2());
              }
       }

Here is the call graph for this function:


Member Data Documentation

template<class T, class R1, class R2>
T* pp::Slot2< T, R1, R2 >::mRcv [private]

Definition at line 159 of file signal.h.

template<class T, class R1, class R2>
SlotPtr_t pp::Slot2< T, R1, R2 >::mSlot [private]

Definition at line 160 of file signal.h.


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