#include <CorbaDispatcher.hpp>
Public Member Functions | |
bool | breakLoop () |
void | cancelChannel (base::ChannelElementBase::shared_ptr chan) |
void | dispatchChannel (base::ChannelElementBase::shared_ptr chan) |
bool | initialize () |
void | loop () |
Public Member Functions inherited from RTT::Activity | |
Activity (base::RunnableInterface *r=0, const std::string &name="Activity") | |
Create a not real-time Activity. This creates a not real-time, non-periodic thread, with priority equal to RTT::os::LowestPriority. More... | |
Activity (int priority, base::RunnableInterface *r=0, const std::string &name="Activity") | |
Create a real-time Activity with a given priority. The thread is run in the ORO_SCHED_RT scheduler. More... | |
Activity (int priority, Seconds period, base::RunnableInterface *r=0, const std::string &name="Activity") | |
Create a real-time Activity with a given priority and period. The thread is run in the ORO_SCHED_RT scheduler. More... | |
Activity (int scheduler, int priority, base::RunnableInterface *r=0, const std::string &name="Activity") | |
Create an Activity with a given scheduler type and priority. More... | |
Activity (int scheduler, int priority, Seconds period, base::RunnableInterface *r=0, const std::string &name="Activity") | |
Create an Activity with a given scheduler type, priority and period. More... | |
Activity (int scheduler, int priority, Seconds period, unsigned cpu_affinity, base::RunnableInterface *r=0, const std::string &name="Activity") | |
Create an Activity with a given scheduler type, priority, period and cpu affinity. More... | |
virtual bool | execute () |
virtual void | finalize () |
virtual unsigned | getCpuAffinity () const |
virtual Seconds | getPeriod () const |
virtual bool | isActive () const |
virtual bool | isPeriodic () const |
virtual bool | isRunning () const |
virtual bool | setCpuAffinity (unsigned cpu) |
virtual bool | setPeriod (Seconds period) |
void | setWaitPeriodPolicy (int p) |
virtual bool | start () |
virtual void | step () |
virtual bool | stop () |
virtual os::ThreadInterface * | thread () |
virtual bool | timeout () |
virtual bool | trigger () |
virtual void | work (base::RunnableInterface::WorkReason reason) |
virtual | ~Activity () |
Public Member Functions inherited from RTT::base::ActivityInterface | |
ActivityInterface () | |
ActivityInterface (RunnableInterface *run) | |
virtual RunnableInterface * | getRunner () const |
virtual bool | run (RunnableInterface *r) |
virtual | ~ActivityInterface () |
Public Member Functions inherited from RTT::os::Thread | |
virtual int | getMaxOverrun () const |
virtual const char * | getName () const |
void | getPeriod (secs &s, nsecs &ns) const |
virtual nsecs | getPeriodNS () const |
virtual unsigned int | getPid () const |
virtual int | getPriority () const |
virtual int | getScheduler () const |
Seconds | getStopTimeout () const |
virtual RTOS_TASK * | getTask () |
virtual const RTOS_TASK * | getTask () const |
virtual void | setMaxOverrun (int m) |
bool | setPeriod (Seconds s) |
bool | setPeriod (secs s, nsecs ns) |
bool | setPeriod (TIME_SPEC p) |
virtual bool | setPriority (int priority) |
virtual bool | setScheduler (int sched_type) |
void | setStopTimeout (Seconds s) |
Thread (int scheduler, int priority, double period, unsigned cpu_affinity, const std::string &name) | |
virtual void | yield () |
virtual | ~Thread () |
Public Member Functions inherited from RTT::os::ThreadInterface | |
bool | isSelf () const |
ThreadInterface () | |
unsigned int | threadNumber () const |
virtual | ~ThreadInterface () |
Static Public Member Functions | |
static void | hasElement (base::ChannelElementBase::shared_ptr c0, base::ChannelElementBase::shared_ptr c1, bool &result) |
static CorbaDispatcher * | Instance (DataFlowInterface *iface) |
static void | Release (DataFlowInterface *iface) |
static void | ReleaseAll () |
Static Public Member Functions inherited from RTT::os::Thread | |
static void | setLockTimeoutNoPeriod (double timeout_in_s) |
static void | setLockTimeoutPeriodFactor (double factor) |
static void | setStackSize (unsigned int ssize) |
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, unsigned cpu_affinity) | |
~CorbaDispatcher () | |
Private Attributes | |
bool | do_exit |
RCList | RClist |
Static Private Attributes | |
static RTT_CORBA_API int | defaultCpuAffinity = 0 |
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::Mutex * | mlock = 0 |
This object sends over data flow messages from local buffers to a remote channel element.
Definition at line 58 of file CorbaDispatcher.hpp.
|
private |
Definition at line 60 of file CorbaDispatcher.hpp.
|
private |
Definition at line 63 of file CorbaDispatcher.hpp.
|
inlineprivate |
Definition at line 74 of file CorbaDispatcher.hpp.
|
inlineprivate |
Definition at line 80 of file CorbaDispatcher.hpp.
|
inlineprivate |
Definition at line 86 of file CorbaDispatcher.hpp.
|
inlinevirtual |
Reimplemented from RTT::Activity.
Definition at line 215 of file CorbaDispatcher.hpp.
|
inline |
Definition at line 195 of file CorbaDispatcher.hpp.
|
inline |
Definition at line 187 of file CorbaDispatcher.hpp.
|
inlinestatic |
Definition at line 182 of file CorbaDispatcher.hpp.
|
inlinevirtual |
Reimplemented from RTT::Activity.
Definition at line 199 of file CorbaDispatcher.hpp.
|
inlinestatic |
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.
iface | The interface to dispatch data flow messages for. |
Definition at line 99 of file CorbaDispatcher.hpp.
|
inlinevirtual |
Reimplemented from RTT::Activity.
Definition at line 205 of file CorbaDispatcher.hpp.
|
inlinestatic |
Releases and cleans up a specific interface from dispatching.
iface |
Definition at line 156 of file CorbaDispatcher.hpp.
|
inlinestatic |
May be called during program termination to clean up all resources.
Definition at line 171 of file CorbaDispatcher.hpp.
|
staticprivate |
Definition at line 72 of file CorbaDispatcher.hpp.
|
staticprivate |
Definition at line 71 of file CorbaDispatcher.hpp.
|
staticprivate |
Definition at line 70 of file CorbaDispatcher.hpp.
|
staticprivate |
Definition at line 61 of file CorbaDispatcher.hpp.
|
private |
Definition at line 66 of file CorbaDispatcher.hpp.
|
staticprivate |
Definition at line 68 of file CorbaDispatcher.hpp.
|
private |
Definition at line 64 of file CorbaDispatcher.hpp.