scim  1.4.18
SignalSlot

Classes

class  scim::BoundSlot0_1< R, P1 >
 Converts a slot taking one argument into a slot taking no arguments. More...
 
class  scim::BoundSlot1_2< R, P1, P2 >
 Converts a slot taking two arguments into a slot taking one argument. More...
 
class  scim::BoundSlot2_3< R, P1, P2, P3 >
 Converts a slot taking three arguments into a slot taking two arguments. More...
 
class  scim::BoundSlot3_4< R, P1, P2, P3, P4 >
 Converts a slot taking four arguments into a slot taking three arguments. More...
 
class  scim::BoundSlot4_5< R, P1, P2, P3, P4, P5 >
 Converts a slot taking five arguments into a slot taking four arguments. More...
 
class  scim::BoundSlot5_6< R, P1, P2, P3, P4, P5, P6 >
 Converts a slot taking six arguments into a slot taking five arguments. More...
 
class  scim::Node
 Base class for classes managing slots. More...
 
class  scim::Connection
 A signal connection class. More...
 
class  scim::SlotNode
 A node class for managing slots connected to scim::Signal's. More...
 
class  scim::DefaultMarshal< R >
 
class  scim::DefaultMarshal< bool >
 
class  scim::Signal
 Base class for the C++ signal interface. More...
 
class  scim::Signal0< R, Marshal >
 A template for a signal passing no arguments and returning a value of type R. More...
 
class  scim::Signal0< void, IgnoreMarshal >
 
class  scim::Signal1< R, P1, Marshal >
 A template for a signal passing one argument of type P1 and returning a value of type R. More...
 
class  scim::Signal1< void, P1, IgnoreMarshal >
 
class  scim::Signal2< R, P1, P2, Marshal >
 A template for a signal passing two arguments of type P1 and P2, and returning a value of type R. More...
 
class  scim::Signal2< void, P1, P2, IgnoreMarshal >
 
class  scim::Signal3< R, P1, P2, P3, Marshal >
 A template for a signal passing three arguments of type P1, P2 and P3, and returning a value of type R. More...
 
class  scim::Signal3< void, P1, P2, P3, IgnoreMarshal >
 
class  scim::Signal4< R, P1, P2, P3, P4, Marshal >
 A template for a signal passing four arguments of type P1, P2, P3 and P4, and returning a value of type R. More...
 
class  scim::Signal4< void, P1, P2, P3, P4, IgnoreMarshal >
 
class  scim::Signal5< R, P1, P2, P3, P4, P5, Marshal >
 A template for a signal passing five arguments of type P1, P2, P3, P4 and P5, and returning a value of type R. More...
 
class  scim::Signal5< void, P1, P2, P3, P4, P5, IgnoreMarshal >
 
class  scim::Signal6< R, P1, P2, P3, P4, P5, P6, Marshal >
 A template for a signal passing six arguments of type P1, P2, P3, P4, P5 and P6, and returning a value of type R. More...
 
class  scim::Signal6< void, P1, P2, P3, P4, P5, P6, IgnoreMarshal >
 
class  scim::Slot
 Base class for slots that can connect to scim::Signals. More...
 
class  scim::Slot0< R >
 Base class template for slots passing no arguments and returning a value of type R. More...
 
class  scim::FunctionSlot0< R >
 A slot template for static functions taking no arguments and returning a value of type R. More...
 
class  scim::MethodSlot0< T, R >
 A slot template for methods in a class of type T taking no arguments and returning a value of type R. More...
 
class  scim::SignalSlot0< T, R >
 
class  scim::Slot1< R, P1 >
 Base class template for slots passing one argument of type P1 and returning a value of type R. More...
 
class  scim::FunctionSlot1< R, P1 >
 A slot template for static functions taking one argument of type P1 and returning a value of type R. More...
 
class  scim::MethodSlot1< T, R, P1 >
 A slot template for methods in a class of type T taking one argument of type P1 and returning a value of type R. More...
 
class  scim::SignalSlot1< T, R, P1 >
 
class  scim::Slot2< R, P1, P2 >
 Base class template for slots passing two arguments of type P1 and P2, and returning a value of type R. More...
 
class  scim::FunctionSlot2< R, P1, P2 >
 A slot template for static functions taking two arguments of type P1 and P2, and returning a value of type R. More...
 
class  scim::MethodSlot2< T, R, P1, P2 >
 A slot template for methods in a class of type T taking two arguments of type P1 and P2, and returning a value of type R. More...
 
class  scim::SignalSlot2< T, R, P1, P2 >
 
class  scim::Slot3< R, P1, P2, P3 >
 Base class template for slots passing three arguments of type P1, P2 and P3, and returning a value of type R. More...
 
class  scim::FunctionSlot3< R, P1, P2, P3 >
 A slot template for static functions taking three arguments of type P1, P2 and P3, and returning a value of type R. More...
 
class  scim::MethodSlot3< T, R, P1, P2, P3 >
 A slot template for methods in a class of type T taking three arguments of type P1, P2 and P3, and returning a value of type R. More...
 
class  scim::SignalSlot3< T, R, P1, P2, P3 >
 
class  scim::Slot4< R, P1, P2, P3, P4 >
 Base class template for slots passing four arguments of type P1, P2, P3 and P4, and returning a value of type R. More...
 
class  scim::FunctionSlot4< R, P1, P2, P3, P4 >
 A slot template for static functions taking four arguments of type P1, P2, P3 and P4, and returning a value of type R. More...
 
class  scim::MethodSlot4< T, R, P1, P2, P3, P4 >
 A slot template for methods in a class of type T taking four arguments of type P1, P2, P3 and P4, and returning a value of type R. More...
 
class  scim::SignalSlot4< T, R, P1, P2, P3, P4 >
 
class  scim::Slot5< R, P1, P2, P3, P4, P5 >
 Base class template for slots passing five arguments of type P1, P2, P3, P4 and P5, and returning a value of type R. More...
 
class  scim::FunctionSlot5< R, P1, P2, P3, P4, P5 >
 A slot template for static functions taking five arguments of type P1, P2, P3, P4 and P5, and returning a value of type R. More...
 
class  scim::MethodSlot5< T, R, P1, P2, P3, P4, P5 >
 A slot template for methods in a class of type T taking five arguments of type P1, P2, P3, P4 and P5, and returning a value of type R. More...
 
class  scim::SignalSlot5< T, R, P1, P2, P3, P4, P5 >
 
class  scim::Slot6< R, P1, P2, P3, P4, P5, P6 >
 Base class template for slots passing six arguments of type P1, P2, P3, P4, P5 and P6, and returning a value of type R. More...
 
class  scim::FunctionSlot6< R, P1, P2, P3, P4, P5, P6 >
 A slot template for static functions taking six arguments of type P1, P2, P3, P4, P5 and P6, and returning a value of type R. More...
 
class  scim::MethodSlot6< T, R, P1, P2, P3, P4, P5, P6 >
 A slot template for methods in a class of type T taking six arguments of type P1, P2, P3, P4, P5 and P6, and returning a value of type R. More...
 
class  scim::SignalSlot6< T, R, P1, P2, P3, P4, P5, P6 >
 

Bind functions returning a new BoundSlot.

template<typename R , typename P1 >
Slot0< R > * scim::bind (Slot1< R, P1 > *s, P1 p1)
 
template<typename R , typename P1 , typename P2 >
Slot1< R, P1 > * scim::bind (Slot2< R, P1, P2 > *s, P2 p2)
 
template<typename R , typename P1 , typename P2 , typename P3 >
Slot2< R, P1, P2 > * scim::bind (Slot3< R, P1, P2, P3 > *s, P3 p3)
 
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 >
Slot3< R, P1, P2, P3 > * scim::bind (Slot4< R, P1, P2, P3, P4 > *s, P4 p4)
 
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
Slot4< R, P1, P2, P3, P4 > * scim::bind (Slot5< R, P1, P2, P3, P4, P5 > *s, P5 p5)
 
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 >
Slot5< R, P1, P2, P3, P4, P5 > * scim::bind (Slot6< R, P1, P2, P3, P4, P5, P6 > *s, P6 p6)
 

Slot functions returning a new slot

template<typename R >
Slot0< R > * scim::slot (R(*function)())
 
template<typename T1 , typename T2 , typename R >
Slot0< R > * scim::slot (T1 *&object, R(T2::*function)())
 
template<typename T1 , typename T2 , typename R >
Slot0< R > * scim::slot (T1 *const &object, R(T2::*function)())
 
template<typename T1 , typename T2 , typename R >
Slot0< R > * scim::slot (T1 &object, R(T2::*function)())
 
template<typename R , typename P1 >
Slot1< R, P1 > * scim::slot (R(*function)(P1))
 
template<typename T1 , typename T2 , typename R , typename P1 >
Slot1< R, P1 > * scim::slot (T1 *&object, R(T2::*function)(P1))
 
template<typename T1 , typename T2 , typename R , typename P1 >
Slot1< R, P1 > * scim::slot (T1 *const &object, R(T2::*function)(P1))
 
template<typename T1 , typename T2 , typename R , typename P1 >
Slot1< R, P1 > * scim::slot (T1 &object, R(T2::*function)(P1))
 
template<typename R , typename P1 , typename P2 >
Slot2< R, P1, P2 > * scim::slot (R(*function)(P1, P2))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 >
Slot2< R, P1, P2 > * scim::slot (T1 *&object, R(T2::*function)(P1, P2))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 >
Slot2< R, P1, P2 > * scim::slot (T1 *const &object, R(T2::*function)(P1, P2))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 >
Slot2< R, P1, P2 > * scim::slot (T1 &object, R(T2::*function)(P1, P2))
 
template<typename R , typename P1 , typename P2 , typename P3 >
Slot3< R, P1, P2, P3 > * scim::slot (R(*function)(P1, P2, P3))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 >
Slot3< R, P1, P2, P3 > * scim::slot (T1 *&object, R(T2::*function)(P1, P2, P3))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 >
Slot3< R, P1, P2, P3 > * scim::slot (T1 *const &object, R(T2::*function)(P1, P2, P3))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 >
Slot3< R, P1, P2, P3 > * scim::slot (T1 &object, R(T2::*function)(P1, P2, P3))
 
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 >
Slot4< R, P1, P2, P3, P4 > * scim::slot (R(*function)(P1, P2, P3, P4))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 >
Slot4< R, P1, P2, P3, P4 > * scim::slot (T1 *&object, R(T2::*function)(P1, P2, P3, P4))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 >
Slot4< R, P1, P2, P3, P4 > * scim::slot (T1 *const &object, R(T2::*function)(P1, P2, P3, P4))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 >
Slot4< R, P1, P2, P3, P4 > * scim::slot (T1 &object, R(T2::*function)(P1, P2, P3, P4))
 
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
Slot5< R, P1, P2, P3, P4, P5 > * scim::slot (R(*function)(P1, P2, P3, P4, P5))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
Slot5< R, P1, P2, P3, P4, P5 > * scim::slot (T1 *&object, R(T2::*function)(P1, P2, P3, P4, P5))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
Slot5< R, P1, P2, P3, P4, P5 > * scim::slot (T1 *const &object, R(T2::*function)(P1, P2, P3, P4, P5))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
Slot5< R, P1, P2, P3, P4, P5 > * scim::slot (T1 &object, R(T2::*function)(P1, P2, P3, P4, P5))
 
template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 >
Slot6< R, P1, P2, P3, P4, P5, P6 > * scim::slot (R(*function)(P1, P2, P3, P4, P5, P6))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 >
Slot6< R, P1, P2, P3, P4, P5, P6 > * scim::slot (T1 *&object, R(T2::*function)(P1, P2, P3, P4, P5, P6))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 >
Slot6< R, P1, P2, P3, P4, P5, P6 > * scim::slot (T1 *const &object, R(T2::*function)(P1, P2, P3, P4, P5, P6))
 
template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 >
Slot6< R, P1, P2, P3, P4, P5, P6 > * scim::slot (T1 &object, R(T2::*function)(P1, P2, P3, P4, P5, P6))
 

Detailed Description

The classes for signal/slot mechanism.

Function Documentation

◆ bind() [1/6]

template<typename R , typename P1 >
Slot0<R>* scim::bind ( Slot1< R, P1 > *  s,
P1  p1 
)
inline

Overloaded bind() factory function.

Parameters
s- a slot of type Slot1<R, P1>.
p1- a value of type P1.
Returns
a new slot that stores the value p1.


When then returned slot is called it calls the original slot s, passing it the arguments passed to it and the value p1, as the last parameter. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ bind() [2/6]

template<typename R , typename P1 , typename P2 >
Slot1<R, P1>* scim::bind ( Slot2< R, P1, P2 > *  s,
P2  p2 
)
inline

Overloaded bind() factory function.

Parameters
s- a slot of type Slot1<R, P1, P2>.
p2- a value of type P2.
Returns
a new slot that stores the value p2.


When then returned slot is called it calls the original slot s, passing it the arguments passed to it and the value p2, as the last parameter. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ bind() [3/6]

template<typename R , typename P1 , typename P2 , typename P3 >
Slot2<R, P1, P2>* scim::bind ( Slot3< R, P1, P2, P3 > *  s,
P3  p3 
)
inline

Overloaded bind() factory function.

Parameters
s- a slot of type Slot1<R, P1, P2, P3>.
p3- a value of type P3.
Returns
a new slot that stores the value p3.


When then returned slot is called it calls the original slot s, passing it the arguments passed to it and the value p3, as the last parameter. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ bind() [4/6]

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 >
Slot3<R, P1, P2, P3>* scim::bind ( Slot4< R, P1, P2, P3, P4 > *  s,
P4  p4 
)
inline

Overloaded bind() factory function.

Parameters
s- a slot of type Slot1<R, P1, P2, P3, P4>.
p4- a value of type P4.
Returns
a new slot that stores the value p4.


When then returned slot is called it calls the original slot s, passing it the arguments passed to it and the value p4, as the last parameter. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ bind() [5/6]

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
Slot4<R, P1, P2, P3, P4>* scim::bind ( Slot5< R, P1, P2, P3, P4, P5 > *  s,
P5  p5 
)
inline

Overloaded bind() factory function.

Parameters
s- a slot of type Slot1<R, P1, P2, P3, P4, P5>.
p5- a value of type P5.
Returns
a new slot that stores the value p5.


When then returned slot is called it calls the original slot s, passing it the arguments passed to it and the value p5, as the last parameter. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ bind() [6/6]

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 >
Slot5<R, P1, P2, P3, P4, P5>* scim::bind ( Slot6< R, P1, P2, P3, P4, P5, P6 > *  s,
P6  p6 
)
inline

Overloaded bind() factory function.

Parameters
s- a slot of type Slot1<R, P1, P2, P3, P4, P5, P6>.
p6- a value of type P6.
Returns
a new slot that stores the value p6.


When then returned slot is called it calls the original slot s, passing it the arguments passed to it and the value p6, as the last parameter. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [1/28]

template<typename R >
Slot0<R>* scim::slot ( R(*)()  function)
inline

Overloaded slot factory function.

Parameters
function- a static function with the signature R (*function)().
Returns
a new slot passing no arguments and returning a value of type R.


If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [2/28]

template<typename T1 , typename T2 , typename R >
Slot0<R>* scim::slot ( T1 *&  object,
R(T2::*)()  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a pointer to an object of type T1.
function- a class method with the signature R (T2::*function)().
Returns
a new slot passing no arguments and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [3/28]

template<typename T1 , typename T2 , typename R >
Slot0<R>* scim::slot ( T1 *const &  object,
R(T2::*)()  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a const pointer to an object of type T1 (e.g. this).
function- a class method with the signature R (T2::*function)().
Returns
a new slot passing no arguments and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [4/28]

template<typename T1 , typename T2 , typename R >
Slot0<R>* scim::slot ( T1 &  object,
R(T2::*)()  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to an object of type T1.
function- a class method with the signature R (T2::*function)().
Returns
a new slot passing no arguments and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [5/28]

template<typename R , typename P1 >
Slot1<R, P1>* scim::slot ( R(*)(P1)  function)
inline

Overloaded slot factory function.

Parameters
function- a static function with the signature R (*function)(P1).
Returns
a new slot passing one argument of type P1 and returning a value of type R.


If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [6/28]

template<typename T1 , typename T2 , typename R , typename P1 >
Slot1<R, P1>* scim::slot ( T1 *&  object,
R(T2::*)(P1)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a pointer to an object of type T1.
function- a class method with the signature R (T2::*function)(P1).
Returns
a new slot passing one argument of type P1 and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [7/28]

template<typename T1 , typename T2 , typename R , typename P1 >
Slot1<R, P1>* scim::slot ( T1 *const &  object,
R(T2::*)(P1)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a const pointer to an object of type T1 (e.g. this).
function- a class method with the signature R (T2::*function)(P1).
Returns
a new slot passing one argument of type P1 and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [8/28]

template<typename T1 , typename T2 , typename R , typename P1 >
Slot1<R, P1>* scim::slot ( T1 &  object,
R(T2::*)(P1)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to an object of type T1.
function- a class method with the signature R (T2::*function)(P1).
Returns
a new slot passing one argument of type P1 and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [9/28]

template<typename R , typename P1 , typename P2 >
Slot2<R, P1, P2>* scim::slot ( R(*)(P1, P2)  function)
inline

Overloaded slot factory function.

Parameters
function- a static function with the signature R (*function)(P1, P2).
Returns
a new slot passing two arguments of type P1 and P2, and returning a value of type R.


If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [10/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 >
Slot2<R, P1, P2>* scim::slot ( T1 *&  object,
R(T2::*)(P1, P2)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a pointer to an object of type T1.
function- a class method with the signature R (T2::*function)(P1, P2).
Returns
a new slot passing two arguments of type P1 and P2, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [11/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 >
Slot2<R, P1, P2>* scim::slot ( T1 *const &  object,
R(T2::*)(P1, P2)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a const pointer to an object of type T1 (e.g. this).
function- a class method with the signature R (T2::*function)(P1, P2).
Returns
a new slot passing two arguments of type P1 and P2, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [12/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 >
Slot2<R, P1, P2>* scim::slot ( T1 &  object,
R(T2::*)(P1, P2)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to an object of type T1.
function- a class method with the signature R (T2::*function)(P1, P2).
Returns
a new slot passing two arguments of type P1 and P2, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [13/28]

template<typename R , typename P1 , typename P2 , typename P3 >
Slot3<R, P1, P2, P3>* scim::slot ( R(*)(P1, P2, P3)  function)
inline

Overloaded slot factory function.

Parameters
function- a static function with the signature R (*function)(P1, P2, P3).
Returns
a new slot passing three arguments of type P1, P2 and P3, and returning a value of type R.


If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [14/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 >
Slot3<R, P1, P2, P3>* scim::slot ( T1 *&  object,
R(T2::*)(P1, P2, P3)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a pointer to an object of type T1.
function- a class method with the signature R (T2::*function)(P1, P2, P3).
Returns
a new slot passing three arguments of type P1, P2 and P3, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [15/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 >
Slot3<R, P1, P2, P3>* scim::slot ( T1 *const &  object,
R(T2::*)(P1, P2, P3)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a const pointer to an object of type T1 (e.g. this).
function- a class method with the signature R (T2::*function)(P1, P2, P3).
Returns
a new slot passing three arguments of type P1, P2 and P3, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [16/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 >
Slot3<R, P1, P2, P3>* scim::slot ( T1 &  object,
R(T2::*)(P1, P2, P3)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to an object of type T1.
function- a class method with the signature R (T2::*function)(P1, P2, P3).
Returns
a new slot passing three arguments of type P1, P2 and P3, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [17/28]

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 >
Slot4<R, P1, P2, P3, P4>* scim::slot ( R(*)(P1, P2, P3, P4)  function)
inline

Overloaded slot factory function.

Parameters
function- a static function with the signature R (*function)(P1, P2, P3, P4).
Returns
a new slot passing four arguments of type P1, P2, P3 and P4, and returning a value of type R.


If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [18/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 >
Slot4<R, P1, P2, P3, P4>* scim::slot ( T1 *&  object,
R(T2::*)(P1, P2, P3, P4)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a pointer to an object of type T1.
function- a class method with the signature R (T2::*function)(P1, P2, P3, P4).
Returns
a new slot passing four arguments of type P1, P2, P3 and P4, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [19/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 >
Slot4<R, P1, P2, P3, P4>* scim::slot ( T1 *const &  object,
R(T2::*)(P1, P2, P3, P4)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a const pointer to an object of type T1 (e.g. this).
function- a class method with the signature R (T2::*function)(P1, P2, P3, P4).
Returns
a new slot passing four arguments of type P1, P2, P3 and P4, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [20/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 >
Slot4<R, P1, P2, P3, P4>* scim::slot ( T1 &  object,
R(T2::*)(P1, P2, P3, P4)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to an object of type T1.
function- a class method with the signature R (T2::*function)(P1, P2, P3, P4).
Returns
a new slot passing four arguments of type P1, P2, P3 and P4, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [21/28]

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
Slot5<R, P1, P2, P3, P4, P5>* scim::slot ( R(*)(P1, P2, P3, P4, P5)  function)
inline

Overloaded slot factory function.

Parameters
function- a static function with the signature R (*function)(P1, P2, P3, P4, P5).
Returns
a new slot passing five arguments of type P1, P2, P3, P4 and P5, and returning a value of type R.


If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [22/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
Slot5<R, P1, P2, P3, P4, P5>* scim::slot ( T1 *&  object,
R(T2::*)(P1, P2, P3, P4, P5)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a pointer to an object of type T1.
function- a class method with the signature R (T2::*function)(P1, P2, P3, P4, P5).
Returns
a new slot passing five arguments of type P1, P2, P3, P4 and P5, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [23/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
Slot5<R, P1, P2, P3, P4, P5>* scim::slot ( T1 *const &  object,
R(T2::*)(P1, P2, P3, P4, P5)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a const pointer to an object of type T1 (e.g. this).
function- a class method with the signature R (T2::*function)(P1, P2, P3, P4, P5).
Returns
a new slot passing five arguments of type P1, P2, P3, P4 and P5, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [24/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 >
Slot5<R, P1, P2, P3, P4, P5>* scim::slot ( T1 &  object,
R(T2::*)(P1, P2, P3, P4, P5)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to an object of type T1.
function- a class method with the signature R (T2::*function)(P1, P2, P3, P4, P5).
Returns
a new slot passing five arguments of type P1, P2, P3, P4 and P5, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [25/28]

template<typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 >
Slot6<R, P1, P2, P3, P4, P5, P6>* scim::slot ( R(*)(P1, P2, P3, P4, P5, P6)  function)
inline

Overloaded slot factory function.

Parameters
function- a static function with the signature R (*function)(P1, P2, P3, P4, P5, P6).
Returns
a new slot passing six arguments of type P1, P2, P3, P4, P5 and P6, and returning a value of type R.


If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [26/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 >
Slot6<R, P1, P2, P3, P4, P5, P6>* scim::slot ( T1 *&  object,
R(T2::*)(P1, P2, P3, P4, P5, P6)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a pointer to an object of type T1.
function- a class method with the signature R (T2::*function)(P1, P2, P3, P4, P5, P6).
Returns
a new slot passing six arguments of type P1, P2, P3, P4, P5 and P6, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [27/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 >
Slot6<R, P1, P2, P3, P4, P5, P6>* scim::slot ( T1 *const &  object,
R(T2::*)(P1, P2, P3, P4, P5, P6)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to a const pointer to an object of type T1 (e.g. this).
function- a class method with the signature R (T2::*function)(P1, P2, P3, P4, P5, P6).
Returns
a new slot passing six arguments of type P1, P2, P3, P4, P5 and P6, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().

◆ slot() [28/28]

template<typename T1 , typename T2 , typename R , typename P1 , typename P2 , typename P3 , typename P4 , typename P5 , typename P6 >
Slot6<R, P1, P2, P3, P4, P5, P6>* scim::slot ( T1 &  object,
R(T2::*)(P1, P2, P3, P4, P5, P6)  function 
)
inline

Overloaded slot factory function.

Parameters
object- a reference to an object of type T1.
function- a class method with the signature R (T2::*function)(P1, P2, P3, P4, P5, P6).
Returns
a new slot passing six arguments of type P1, P2, P3, P4, P5 and P6, and returning a value of type R.


T1 can be the same object type as T2. If the returned slot is connected to a signal it doesn't have to be unreferenced. The signal it's connected to will unreference the slot when it is destroyed. Otherwise the slot must be unreferenced by calling unref().