38 #ifndef ORO_CORBA_CONTROLTASK_PROXY_HPP 39 #define ORO_CORBA_CONTROLTASK_PROXY_HPP 49 #include <omniORB4/CORBA.h> 53 #include "../../TaskContext.hpp" 56 #include "TaskContextC.h" 67 :
public std::exception
73 const
char*
what() const throw();
87 typedef std::map<TaskContextProxy*, corba::CTaskContext_ptr>
PMap;
119 void initFromURIOrTaskname(std::string location,
bool is_ior);
123 mutable corba::CTaskContext_var
mtask;
139 static void DestroyOrb();
167 static TaskContext* Create(::RTT::corba::CTaskContext_ptr task,
bool force_remote =
false);
176 corba::CTaskContext_ptr server()
const;
178 virtual bool activate();
180 virtual bool start();
184 virtual bool isRunning()
const;
186 virtual bool configure();
188 virtual bool cleanup();
190 virtual bool recover();
192 virtual bool isActive()
const;
194 virtual bool isConfigured()
const;
196 virtual bool inFatalError()
const;
198 virtual bool inRunTimeError()
const;
200 virtual bool inException()
const;
204 virtual void setName(
const std::string& n);
206 virtual bool addPeer( TaskContext* peer, std::string alias =
"" );
208 virtual void removePeer(
const std::string& name );
210 virtual void removePeer( TaskContext* peer );
214 virtual void disconnectPeers(
const std::string& name );
216 virtual PeerList getPeerList()
const;
218 virtual bool hasPeer(
const std::string& peer_name )
const;
220 virtual TaskContext* getPeer(
const std::string& peer_name )
const;
224 virtual bool connectServices( TaskContext* peer );
226 virtual bool ready();
230 static PortableServer::POA_ptr ProxyPOA();
static PortableServer::POA_var proxy_poa
For now one POA handles all proxies.
boost::shared_ptr< ServiceRequester > shared_ptr
boost::shared_ptr< Service > shared_ptr
corba::CTaskContext_var mtask
Thrown if a server does not exist or has the wrong type.
const char * what() const
A class which an provides ORB to the application process.
This class manages the access of remote TaskContext Corba Servers and a Corba Object Request Broker (...
std::vector< std::string > PeerList
A list of Peer TaskContext names.
std::map< TaskContextProxy *, corba::CTaskContext_ptr > PMap
TaskState
Describes the different states a component can have.
std::list< base::PortInterface * > port_proxies
CDataFlowInterface does not delete ports automatically, because they can then be defined as members o...
The TaskContext is the C++ representation of an Orocos component.
bool connectPorts(TaskContext *A, TaskContext *B)
Connect the Data Flow Ports of A and B in both directions, by matching port names.
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
bool connectPeers(TaskContext *A, TaskContext *B)
Set up the Execution Flow (who knows who) between A and B in both directions.