Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes
RTT::corba::CorbaDispatcher Class Reference

#include <CorbaDispatcher.hpp>

Inheritance diagram for RTT::corba::CorbaDispatcher:
Inheritance graph
[legend]

List of all members.

Public Member Functions

bool breakLoop ()
void cancelChannel (base::ChannelElementBase::shared_ptr chan)
void dispatchChannel (base::ChannelElementBase::shared_ptr chan)
bool initialize ()
void loop ()

Static Public Member Functions

static void hasElement (base::ChannelElementBase::shared_ptr c0, base::ChannelElementBase::shared_ptr c1, bool &result)
static CorbaDispatcherInstance (DataFlowInterface *iface, int scheduler=defaultScheduler, int priority=defaultPriority)
static void Release (DataFlowInterface *iface)
static void ReleaseAll ()

Private Types

typedef std::map
< DataFlowInterface
*, CorbaDispatcher * > 
DispatchMap
typedef internal::List
< base::ChannelElementBase::shared_ptr
RCList

Private Member Functions

 CorbaDispatcher (const std::string &name)
 CorbaDispatcher (const std::string &name, int scheduler, int priority)
 ~CorbaDispatcher ()

Private Attributes

bool do_exit
RCList RClist

Static Private Attributes

static RTT_CORBA_API int defaultPriority = os::LowestPriority
static RTT_CORBA_API int defaultScheduler = ORO_SCHED_RT
static RTT_CORBA_API DispatchMap DispatchI
static RTT_CORBA_API os::Mutexmlock = 0

Detailed Description

This object sends over data flow messages from local buffers to a remote channel element.

Definition at line 57 of file CorbaDispatcher.hpp.


Member Typedef Documentation

Definition at line 59 of file CorbaDispatcher.hpp.

Definition at line 62 of file CorbaDispatcher.hpp.


Constructor & Destructor Documentation

RTT::corba::CorbaDispatcher::CorbaDispatcher ( const std::string &  name) [inline, private]

Definition at line 72 of file CorbaDispatcher.hpp.

RTT::corba::CorbaDispatcher::CorbaDispatcher ( const std::string &  name,
int  scheduler,
int  priority 
) [inline, private]

Definition at line 78 of file CorbaDispatcher.hpp.

Definition at line 84 of file CorbaDispatcher.hpp.


Member Function Documentation

bool RTT::corba::CorbaDispatcher::breakLoop ( ) [inline, virtual]
See also:
base::RunnableInterface::breakLoop()

Reimplemented from RTT::Activity.

Definition at line 184 of file CorbaDispatcher.hpp.

Definition at line 164 of file CorbaDispatcher.hpp.

Definition at line 156 of file CorbaDispatcher.hpp.

Definition at line 151 of file CorbaDispatcher.hpp.

bool RTT::corba::CorbaDispatcher::initialize ( ) [inline, virtual]
See also:
base::RunnableInterface::initialize()

Reimplemented from RTT::Activity.

Definition at line 168 of file CorbaDispatcher.hpp.

static CorbaDispatcher* RTT::corba::CorbaDispatcher::Instance ( DataFlowInterface iface,
int  scheduler = defaultScheduler,
int  priority = defaultPriority 
) [inline, static]

Create a new dispatcher for a given data flow interface. This method will only lock and allocate when a new dispatcher must be created, otherwise, the access is lock-free and real-time. One dispatcher per iface is created.

Parameters:
ifaceThe interface to dispatch data flow messages for.
Returns:

Definition at line 97 of file CorbaDispatcher.hpp.

void RTT::corba::CorbaDispatcher::loop ( ) [inline, virtual]
See also:
base::RunnableInterface::loop()

Reimplemented from RTT::Activity.

Definition at line 174 of file CorbaDispatcher.hpp.

static void RTT::corba::CorbaDispatcher::Release ( DataFlowInterface iface) [inline, static]

Releases and cleans up a specific interface from dispatching.

Parameters:
iface

Definition at line 125 of file CorbaDispatcher.hpp.

static void RTT::corba::CorbaDispatcher::ReleaseAll ( ) [inline, static]

May be called during program termination to clean up all resources.

Definition at line 140 of file CorbaDispatcher.hpp.


Member Data Documentation

Definition at line 70 of file CorbaDispatcher.hpp.

Definition at line 69 of file CorbaDispatcher.hpp.

Definition at line 60 of file CorbaDispatcher.hpp.

Definition at line 65 of file CorbaDispatcher.hpp.

RTT_CORBA_API os::Mutex * RTT::CorbaDispatcher::mlock = 0 [static, private]

Definition at line 67 of file CorbaDispatcher.hpp.

Definition at line 63 of file CorbaDispatcher.hpp.


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


rtt
Author(s): RTT Developers
autogenerated on Fri Sep 9 2016 04:02:19