Orocos Real-Time Toolkit  2.8.3
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
RTT::internal::OROCOS_SIGNAL_N< R, SlotFunctionT > Class Template Reference

#include <rtt/internal/signal_template.hpp>

Inheritance diagram for RTT::internal::OROCOS_SIGNAL_N< R, SlotFunctionT >:
RTT::internal::SignalBase

Public Types

typedef SlotFunctionT slot_function_type
 
typedef OROCOS_SIGNAL_CONNECTION_N< SlotFunctionT > connection_impl
 
typedef R result_type
 
typedef ConnectionBase::shared_ptr connection_t
 
typedef ListLockFree< connection_tconnections_list
 

Public Member Functions

OROCOS_SIGNATURE_ARG_TYPES OROCOS_SIGNAL_N ()
 
Handle connect (const slot_function_type &f)
 
Handle setup (const slot_function_type &f)
 
emit (OROCOS_SIGNATURE_PARMS)
 
operator() (OROCOS_SIGNATURE_PARMS)
 
fire (OROCOS_SIGNATURE_PARMS)
 
virtual int arity () const
 Returns the arity (the number of arguments) of this signal. More...
 
void disconnect ()
 Disconnects all connections. More...
 
void destroy ()
 Destroys all connections. More...
 
void reserve (size_t conns)
 Reserves memory for a number of connections. More...
 

Protected Member Functions

void conn_setup (connection_t conn)
 
void conn_connect (connection_t conn)
 
void conn_disconnect (connection_t conn)
 
void conn_destroy (connection_t conn)
 

Protected Attributes

connections_list mconnections
 
bool emitting
 

Detailed Description

template<typename R, OROCOS_SIGNATURE_TEMPLATE_PARMS OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS class SlotFunctionT = OROCOS_SIGNATURE_FUNCTION_N< R OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS OROCOS_SIGNATURE_TEMPLATE_ARGS>>
class RTT::internal::OROCOS_SIGNAL_N< R, SlotFunctionT >

Definition at line 85 of file signal_template.hpp.

Member Typedef Documentation

template<typename R, OROCOS_SIGNATURE_TEMPLATE_PARMS OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS class SlotFunctionT = OROCOS_SIGNATURE_FUNCTION_N< R OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS OROCOS_SIGNATURE_TEMPLATE_ARGS>>
typedef OROCOS_SIGNAL_CONNECTION_N<SlotFunctionT> RTT::internal::OROCOS_SIGNAL_N< R, SlotFunctionT >::connection_impl

Definition at line 92 of file signal_template.hpp.

Definition at line 131 of file SignalBase.hpp.

Definition at line 133 of file SignalBase.hpp.

template<typename R, OROCOS_SIGNATURE_TEMPLATE_PARMS OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS class SlotFunctionT = OROCOS_SIGNATURE_FUNCTION_N< R OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS OROCOS_SIGNATURE_TEMPLATE_ARGS>>
typedef R RTT::internal::OROCOS_SIGNAL_N< R, SlotFunctionT >::result_type

Definition at line 94 of file signal_template.hpp.

template<typename R, OROCOS_SIGNATURE_TEMPLATE_PARMS OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS class SlotFunctionT = OROCOS_SIGNATURE_FUNCTION_N< R OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS OROCOS_SIGNATURE_TEMPLATE_ARGS>>
typedef SlotFunctionT RTT::internal::OROCOS_SIGNAL_N< R, SlotFunctionT >::slot_function_type

Definition at line 91 of file signal_template.hpp.

Constructor & Destructor Documentation

template<typename R, OROCOS_SIGNATURE_TEMPLATE_PARMS OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS class SlotFunctionT = OROCOS_SIGNATURE_FUNCTION_N< R OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS OROCOS_SIGNATURE_TEMPLATE_ARGS>>
OROCOS_SIGNATURE_ARG_TYPES RTT::internal::OROCOS_SIGNAL_N< R, SlotFunctionT >::OROCOS_SIGNAL_N ( )
inline

Definition at line 105 of file signal_template.hpp.

Member Function Documentation

template<typename R, OROCOS_SIGNATURE_TEMPLATE_PARMS OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS class SlotFunctionT = OROCOS_SIGNATURE_FUNCTION_N< R OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS OROCOS_SIGNATURE_TEMPLATE_ARGS>>
virtual int RTT::internal::OROCOS_SIGNAL_N< R, SlotFunctionT >::arity ( ) const
inlinevirtual

Returns the arity (the number of arguments) of this signal.

Implements RTT::internal::SignalBase.

Definition at line 178 of file signal_template.hpp.

References OROCOS_SIGNATURE_NUM_ARGS.

void RTT::internal::SignalBase::conn_connect ( connection_t  conn)
protectedinherited

Definition at line 103 of file SignalBase.cpp.

void RTT::internal::SignalBase::conn_destroy ( connection_t  conn)
protectedinherited

Definition at line 130 of file SignalBase.cpp.

Referenced by RTT::internal::ConnectionBase::destroy().

void RTT::internal::SignalBase::conn_disconnect ( connection_t  conn)
protectedinherited

Definition at line 146 of file SignalBase.cpp.

void RTT::internal::SignalBase::conn_setup ( connection_t  conn)
protectedinherited

Definition at line 88 of file SignalBase.cpp.

template<typename R, OROCOS_SIGNATURE_TEMPLATE_PARMS OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS class SlotFunctionT = OROCOS_SIGNATURE_FUNCTION_N< R OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS OROCOS_SIGNATURE_TEMPLATE_ARGS>>
Handle RTT::internal::OROCOS_SIGNAL_N< R, SlotFunctionT >::connect ( const slot_function_type f)
inline

Definition at line 109 of file signal_template.hpp.

References RTT::Handle::connect().

void RTT::internal::SignalBase::destroy ( )
inherited

Destroys all connections.

This will destroy all connections of this Event. All Handles will be disconnected and unable to reconnect.

Definition at line 251 of file SignalBase.cpp.

References RTT::internal::ListLockFree< T >::empty(), RTT::internal::ListLockFree< T >::erase(), RTT::internal::ListLockFree< T >::front(), and RTT::internal::SignalBase::mconnections.

Referenced by RTT::internal::SignalBase::~SignalBase().

void RTT::internal::SignalBase::disconnect ( )
inherited

Disconnects all connections.

All Handles will be disconnected, but able to reconnect.

Definition at line 240 of file SignalBase.cpp.

References RTT::internal::ListLockFree< T >::apply(), and RTT::internal::SignalBase::mconnections.

template<typename R, OROCOS_SIGNATURE_TEMPLATE_PARMS OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS class SlotFunctionT = OROCOS_SIGNATURE_FUNCTION_N< R OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS OROCOS_SIGNATURE_TEMPLATE_ARGS>>
R RTT::internal::OROCOS_SIGNAL_N< R, SlotFunctionT >::emit ( OROCOS_SIGNATURE_PARMS  )
inline
template<typename R, OROCOS_SIGNATURE_TEMPLATE_PARMS OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS class SlotFunctionT = OROCOS_SIGNATURE_FUNCTION_N< R OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS OROCOS_SIGNATURE_TEMPLATE_ARGS>>
R RTT::internal::OROCOS_SIGNAL_N< R, SlotFunctionT >::fire ( OROCOS_SIGNATURE_PARMS  )
inline
template<typename R, OROCOS_SIGNATURE_TEMPLATE_PARMS OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS class SlotFunctionT = OROCOS_SIGNATURE_FUNCTION_N< R OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS OROCOS_SIGNATURE_TEMPLATE_ARGS>>
R RTT::internal::OROCOS_SIGNAL_N< R, SlotFunctionT >::operator() ( OROCOS_SIGNATURE_PARMS  )
inline
void RTT::internal::SignalBase::reserve ( size_t  conns)
inherited

Reserves memory for a number of connections.

Use this method to efficiently reserve memory for possible connections. If not used, the event will reserve memory in batch, depending upon demand. This does not impair/influence real-time performance, only memory efficiency.

Parameters
connsThe number of connections to reserve memory for.

Definition at line 267 of file SignalBase.cpp.

References RTT::internal::SignalBase::mconnections, and RTT::internal::ListLockFree< T >::reserve().

template<typename R, OROCOS_SIGNATURE_TEMPLATE_PARMS OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS class SlotFunctionT = OROCOS_SIGNATURE_FUNCTION_N< R OROCOS_SIGNATURE_COMMA_IF_NONZERO_ARGS OROCOS_SIGNATURE_TEMPLATE_ARGS>>
Handle RTT::internal::OROCOS_SIGNAL_N< R, SlotFunctionT >::setup ( const slot_function_type f)
inline

Member Data Documentation

bool RTT::internal::SignalBase::emitting
protectedinherited

Definition at line 171 of file SignalBase.hpp.

connections_list RTT::internal::SignalBase::mconnections
protectedinherited

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