Main Page Groups Namespaces

# sigc::internal::typed_slot_rep<T_functor> Struct Template Reference

A typed slot_rep. More...

Inheritance diagram for sigc::internal::typed_slot_rep< T_functor >:

[legend]
List of all members.

## Public Types

typedef typed_slot_rep<T_functor> | self
typedef adaptor_trait< T_functor >::adaptor_type | adaptor_type

## Public Member Functions

| typed_slot_rep (const T_functor& functor)
| Constructs an invalid typed slot_rep object.
| typed_slot_rep (const typed_slot_rep& cl)
| ~typed_slot_rep ()

## Static Public Member Functions

static void* | destroy (void* data)
| Detaches the stored functor from the other referred trackables and destroys it.
static void* | dup (void* data)
| Makes a deep copy of the slot_rep object.

## Public Attributes

adaptor_type | functor_
| The functor contained by this slot_rep object.

## Detailed Description

### template <class T_functor>
struct sigc::internal::typed_slot_rep< T_functor >

A typed slot_rep.

A typed slot_rep holds a functor that can be invoked from slot::operator()(). visit_each() is used to visit the functor's targets that inherit trackable recursively and register the notification callback. Consequently the slot_rep object will be notified when some referred object is destroyed or overwritten.

## Member Typedef Documentation

template <class T_functor>

typedef typed_slot_rep<T_functor> sigc::internal::typed_slot_rep<T_functor>::self

template <class T_functor>

typedef adaptor_trait<T_functor>::adaptor_type sigc::internal::typed_slot_rep<T_functor>::adaptor_type

## Constructor & Destructor Documentation

template <class T_functor>

sigc::internal::typed_slot_rep<T_functor>::typed_slot_rep | ( | const T_functor & | functor | ) | `[inline]`

Constructs an invalid typed slot_rep object.

The notification callback is registered using visit_each().

Parameters:

  | functor | The functor contained by the new slot_rep object.

template <class T_functor>

sigc::internal::typed_slot_rep<T_functor>::typed_slot_rep | ( | const typed_slot_rep<T_functor>& | cl | ) | `[inline]`

template <class T_functor>

sigc::internal::typed_slot_rep<T_functor>::~typed_slot_rep | ( |  | ) | `[inline]`

## Member Function Documentation

template <class T_functor>

static void* sigc::internal::typed_slot_rep<T_functor>::destroy | ( | void * | data | ) | `[inline, static]`

Detaches the stored functor from the other referred trackables and destroys it.

This does not destroy the base slot_rep object.

template <class T_functor>

static void* sigc::internal::typed_slot_rep<T_functor>::dup | ( | void * | data | ) | `[inline, static]`

Makes a deep copy of the slot_rep object.

Deep copy means that the notification callback of the new slot_rep object is registered in the referred trackables.

Returns:
  A deep copy of the slot_rep object.

## Member Data Documentation

template <class T_functor>

adaptor_type sigc::internal::typed_slot_rep<T_functor>::functor_

The functor contained by this slot_rep object.

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

- functors/slot.h