Orocos Real-Time Toolkit  2.8.3
OperationCallerInterface.hpp
Go to the documentation of this file.
1 #ifndef ORO_OPERATION_CALLER_INTERFACE_HPP
2 #define ORO_OPERATION_CALLER_INTERFACE_HPP
3 
4 #include "../rtt-fwd.hpp"
6 #include "OperationBase.hpp"
7 
8 namespace RTT
9 {
10  namespace base
11  {
16  {
21  typedef boost::shared_ptr<OperationCallerInterface> shared_ptr;
22 
29 
31 
32  virtual ~OperationCallerInterface();
33 
38  virtual bool ready() const = 0;
39 
45  virtual void setOwner(ExecutionEngine* ee);
46 
54  virtual void setCaller(ExecutionEngine* ee);
55 
64  bool setThread(ExecutionThread et,
65  ExecutionEngine* executor);
66 
67  ExecutionThread getThread() const { return met; }
68 
74  void reportError();
75 
79  bool isSend() { return met == OwnThread && myengine != caller; }
80 
81  ExecutionEngine* getMessageProcessor() const;
82 
83  protected:
87  };
88  }
89 }
90 
91 #endif
bool isSend()
Helpful function to tell us if this operations is to be sent or not.
The interface class for operation callers.
#define RTT_API
Definition: rtt-config.h:97
boost::shared_ptr< OperationCallerInterface > shared_ptr
Use this type for shared pointer storage of an OperationCallerInterface object.
An execution engine serialises (executes one after the other) the execution of all commands...
An object that is executable and is freed after execution.
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
Definition: Activity.cpp:51
ExecutionThread
Users can choose if an operation&#39;s function is executed in the component&#39;s thread (OwnThread) or in t...