NEOCCA bindings Specification  0.2.8
ServiceRegistry.hh
Go to the documentation of this file.
1 #ifndef ServiceRegistry_hh_seen
2 #define ServiceRegistry_hh_seen
3 namespace neo {
4 namespace cca {
5 namespace ports {
6 
7 
8 //===================================================================
14 class ServiceRegistry : public virtual neo::cca::Port
15 {
16 public:
17 
18  virtual ~ServiceRegistry() {}
19 
26  virtual bool addService(const std::string & type, ServiceProvider * portProvider)= 0;
27 
31  virtual bool addSingletonService(const std::string & type, neo::cca::Port * service)= 0;
32 
38  virtual void removeService(const std::string & serviceType)= 0;
39 
40 }; // class ServiceRegistry
41 
42 } // end namespace ports
43 } // end namespace cca
44 } // end namespace neo
45 
46 #endif // ServiceRegistry_hh_seen
virtual bool addSingletonService(const std::string &type, neo::cca::Port *service)=0
Add a "reusable" service gov.cca.Port for other components to use subsequently.
virtual ~ServiceRegistry()
Definition: ServiceRegistry.hh:18
virtual void removeService(const std::string &serviceType)=0
Inform the framework that this service Port is no longer to be used, subsequent to this call...
NOT YET DEFINED IN CCA.SIDL: ServiceProvider interface implements a non-singleton service Port...
Definition: ServiceProvider.hh:36
virtual bool addService(const std::string &type, ServiceProvider *portProvider)=0
Add a ServiceProvider that can be asked to produce service Port's for other components to use subsequ...
NOT YET DEFINED IN CCA.SIDL: ServiceRegistry is a Port that is primordially provided by the framework...
Definition: ServiceRegistry.hh:14
A pure-virtual tag interface to identify a function set capable of being exported to or imported from...
Definition: Port.hh:17
This is neoclassic – the ::classic::gov::cca headers updated to be similar to the official CCA speci...
Definition: neocca.hh:62