NEOCCA bindings Specification  0.2.8
BuilderService.hh
Go to the documentation of this file.
1 #ifndef neo_cca_ports_BuilderService_h_seen
2 #define neo_cca_ports_BuilderService_h_seen
3 
4 #include <neocca.hh>
5 
6 namespace neo {
7 namespace cca {
8 namespace ports {
9 
14 class BuilderService : public virtual ::neo::cca::Port
15 {
16 private:
17 public:
18 
19 
20  virtual ~BuilderService(){}
21 
29  virtual neo::cca::ComponentID_shared createInstance(const ::std::string & instanceName, const ::std::string & className, ::neo::cca::TypeMap_shared properties) throw ( ::neo::cca::Exception )= 0;
32  virtual neo::cca::ComponentID_shared createInstance(const ::std::string & instanceName, const ::std::string & className) throw ( ::neo::cca::Exception )= 0;
33 
40  virtual ::std::vector< neo::cca::ComponentID_shared > getComponentIDs() throw ( ::neo::cca::Exception )= 0;
41 
52 
60 
71  virtual neo::cca::ComponentID_shared getDeserialization( const ::std::string & s) throw ( ::neo::cca::Exception )= 0;
72 
82  virtual neo::cca::ComponentID_shared getComponentID( const ::std::string & componentInstanceName) throw ( ::neo::cca::Exception )= 0;
83 
95  virtual void destroyInstance( neo::cca::ComponentID_shared toDie, float timeout ) throw ( ::neo::cca::Exception )= 0;
96 
105  virtual ::std::vector< ::std::string > getProvidedPortNames( neo::cca::ComponentID_shared cid) throw ( ::neo::cca::Exception )= 0;
106 
115  virtual ::std::vector< ::std::string > getUsedPortNames( neo::cca::ComponentID_shared cid) throw ( ::neo::cca::Exception )= 0;
116 
126 
134  virtual void setPortProperties( neo::cca::ComponentID_shared cid, const ::std::string & portname, ::neo::cca::TypeMap_shared map) throw ( ::neo::cca::Exception )= 0;
135 
156  virtual neo::cca::ConnectionID_shared connect( neo::cca::ComponentID_shared user, const ::std::string & usingPortName, neo::cca::ComponentID_shared provider, const ::std::string & providingPortName) throw ( ::neo::cca::Exception )= 0;
157 
170  virtual ::std::vector < neo::cca::ConnectionID_shared > getConnectionIDs( ::std::vector< neo::cca::ComponentID_shared > & componentList) throw ( ::neo::cca::Exception )= 0;
171 
179 
188 
202  virtual void disconnect( neo::cca::ConnectionID_shared & connID, float timeout) throw ( ::neo::cca::Exception )= 0;
203 
213  virtual void disconnectAll( neo::cca::ComponentID_shared & id1, neo::cca::ComponentID_shared & id2, float timeout) throw ( ::neo::cca::Exception )= 0;
214 
215 } ; // end interface BuilderService
216 
217 } // end namespace ports
218 } // end namespace cca
219 } // end namespace neo
220 #endif // neo_cca_ports_BuilderService_h_seen
boost::shared_ptr< ComponentID > ComponentID_shared
This typedef is the type everyone should use everywhere in the BuilderService and event related ports...
Definition: ComponentID.hh:33
virtual void setConnectionProperties(neo::cca::ConnectionID_shared &connID, ::neo::cca::TypeMap_shared map)=0
Associates the properties with the connection.
boost::shared_ptr< TypeMap > TypeMap_shared
This (TypeMap_shared) is what everyone declares in component code and noone ever calls new on...
Definition: TypeMap.hh:14
virtual ::neo::cca::TypeMap_shared getComponentProperties(neo::cca::ComponentID_shared cid)=0
Get property map for component.
virtual void disconnect(neo::cca::ConnectionID_shared &connID, float timeout)=0
Disconnect the connection indicated by connID before the indicated timeout in secs.
virtual ::std::vector< neo::cca::ConnectionID_shared > getConnectionIDs(::std::vector< neo::cca::ComponentID_shared > &componentList)=0
Returns a list of connections as an array of handles.
virtual ~BuilderService()
Definition: BuilderService.hh:20
This class extends the STL std::exception to allow the thrower to specify the message that the stl sa...
Definition: Exception.hh:48
virtual void destroyInstance(neo::cca::ComponentID_shared toDie, float timeout)=0
Eliminate the Component instance, from the scope of the framework.
virtual ::std::vector< neo::cca::ComponentID_shared > getComponentIDs()=0
Get component list.
virtual ::std::vector< ::std::string > getUsedPortNames(neo::cca::ComponentID_shared cid)=0
Get the names of Port instances used by the identified component.
virtual ::neo::cca::TypeMap_shared getPortProperties(neo::cca::ComponentID_shared cid, const ::std::string &portname)=0
Fetch map of Port properties exposed by the framework.
virtual void setComponentProperties(neo::cca::ComponentID_shared cid, ::neo::cca::TypeMap_shared map)=0
Causes the framework implementation to associate the given properties with the component designated b...
virtual neo::cca::ComponentID_shared getDeserialization(const ::std::string &s)=0
Get component id from stringified reference.
virtual neo::cca::ComponentID_shared createInstance(const ::std::string &instanceName, const ::std::string &className, ::neo::cca::TypeMap_shared properties)=0
Creates an instance of a CCA component of the type defined by the string className.
virtual ::neo::cca::TypeMap_shared getConnectionProperties(neo::cca::ConnectionID_shared &connID)=0
Fetch property map of a connection.
virtual void disconnectAll(neo::cca::ComponentID_shared &id1, neo::cca::ComponentID_shared &id2, float timeout)=0
Remove all connections between components id1 and id2 within the period of timeout secs...
virtual neo::cca::ComponentID_shared getComponentID(const ::std::string &componentInstanceName)=0
Get id from name by which it was created.
"neo.cca.BuilderService": the BuilderService.
Definition: BuilderService.hh:14
A pure-virtual tag interface to identify a function set capable of being exported to or imported from...
Definition: Port.hh:17
virtual neo::cca::ConnectionID_shared connect(neo::cca::ComponentID_shared user, const ::std::string &usingPortName, neo::cca::ComponentID_shared provider, const ::std::string &providingPortName)=0
Creates a connection between ports on component user and component provider.
boost::shared_ptr< ConnectionID > ConnectionID_shared
This typedef is the type everyone should use everywhere in the BuilderService and event related ports...
Definition: ConnectionID.hh:33
virtual ::std::vector< ::std::string > getProvidedPortNames(neo::cca::ComponentID_shared cid)=0
Get the names of Port instances provided by the identified component.
This is neoclassic – the ::classic::gov::cca headers updated to be similar to the official CCA speci...
Definition: neocca.hh:62
virtual void setPortProperties(neo::cca::ComponentID_shared cid, const ::std::string &portname, ::neo::cca::TypeMap_shared map)=0
Associates the properties given in map with the Port indicated by portname.