cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
mtsManagerLocalInterface Class Referenceabstract

#include <mtsManagerLocalInterface.h>

Inheritance diagram for mtsManagerLocalInterface:
cmnGenericObject mtsManagerLocal

Public Member Functions

virtual bool CreateComponentProxy (const std::string &componentProxyName, const std::string &listenerID="")=0
 
virtual bool RemoveComponentProxy (const std::string &componentProxyName, const std::string &listenerID="")=0
 
virtual bool CreateInterfaceProvidedProxy (const std::string &serverComponentProxyName, const mtsInterfaceProvidedDescription &providedInterfaceDescription, const std::string &listenerID="")=0
 
virtual bool CreateInterfaceRequiredProxy (const std::string &clientComponentProxyName, const mtsInterfaceRequiredDescription &requiredInterfaceDescription, const std::string &listenerID="")=0
 
virtual bool RemoveInterfaceProvidedProxy (const std::string &componentProxyName, const std::string &providedInterfaceProxyName, const std::string &listenerID="")=0
 
virtual bool RemoveInterfaceRequiredProxy (const std::string &componentProxyName, const std::string &requiredInterfaceProxyName, const std::string &listenerID="")=0
 
virtual bool ConnectServerSideInterface (const mtsDescriptionConnection &description, const std::string &listenerID="")=0
 Connect interfaces at server side. More...
 
virtual bool ConnectClientSideInterface (const mtsDescriptionConnection &description, const std::string &listenerID="")=0
 Connect interfaces at client side. More...
 
virtual const std::string GetProcessName (const std::string &listenerID="") const =0
 
virtual void GetNamesOfCommands (std::vector< std::string > &namesOfCommands, const std::string &componentName, const std::string &providedInterfaceName, const std::string &listenerID="")=0
 
virtual void GetNamesOfEventGenerators (std::vector< std::string > &namesOfEventGenerators, const std::string &componentName, const std::string &providedInterfaceName, const std::string &listenerID="")=0
 
virtual void GetNamesOfFunctions (std::vector< std::string > &namesOfFunctions, const std::string &componentName, const std::string &requiredInterfaceName, const std::string &listenerID="")=0
 
virtual void GetNamesOfEventHandlers (std::vector< std::string > &namesOfEventHandlers, const std::string &componentName, const std::string &requiredInterfaceName, const std::string &listenerID="")=0
 
virtual void GetDescriptionOfCommand (std::string &description, const std::string &componentName, const std::string &providedInterfaceName, const std::string &commandName, const std::string &listenerID="")=0
 
virtual void GetDescriptionOfEventGenerator (std::string &description, const std::string &componentName, const std::string &providedInterfaceName, const std::string &eventGeneratorName, const std::string &listenerID="")=0
 
virtual void GetDescriptionOfFunction (std::string &description, const std::string &componentName, const std::string &requiredInterfaceName, const std::string &functionName, const std::string &listenerID="")=0
 
virtual void GetDescriptionOfEventHandler (std::string &description, const std::string &componentName, const std::string &requiredInterfaceName, const std::string &eventHandlerName, const std::string &listenerID="")=0
 
virtual bool GetInterfaceProvidedDescription (const std::string &serverComponentName, const std::string &providedInterfaceName, mtsInterfaceProvidedDescription &providedInterfaceDescription, const std::string &listenerID="")=0
 Extract all information about provided interface such as command objects and event generators. Arguments are serialized, if any. More...
 
virtual bool GetInterfaceRequiredDescription (const std::string &componentName, const std::string &requiredInterfaceName, mtsInterfaceRequiredDescription &requiredInterfaceDescription, const std::string &listenerID="")=0
 Extract all information about required interface such as function objects and event handlers. Arguments are serialized, if any. More...
 
- Public Member Functions inherited from cmnGenericObject
virtual ~cmnGenericObject (void)
 
virtual const
cmnClassServicesBase
Services (void) const =0
 
bool ReconstructFrom (const cmnGenericObject &other)
 
std::string ToString (void) const
 
virtual void ToStream (std::ostream &outputStream) const
 
virtual void ToStreamRaw (std::ostream &outputStream, const char delimiter= ' ', bool headerOnly=false, const std::string &headerPrefix="") const
 
virtual bool FromStreamRaw (std::istream &inputStream, const char delimiter= ' ')
 
virtual void SerializeRaw (std::ostream &outputStream) const
 
virtual void DeSerializeRaw (std::istream &inputStream)
 
virtual cmnLogger::StreamBufTypeGetLogMultiplexer (void) const
 
virtual size_t ScalarNumber (void) const
 
virtual bool ScalarNumberIsFixed (void) const
 
virtual double Scalar (const size_t CMN_UNUSED(index)) const throw (std::out_of_range)
 
virtual std::string ScalarDescription (const size_t CMN_UNUSED(index), const std::string &CMN_UNUSED(userDescription)) const
 

Member Function Documentation

virtual bool mtsManagerLocalInterface::ConnectClientSideInterface ( const mtsDescriptionConnection description,
const std::string &  listenerID = "" 
)
pure virtual

Connect interfaces at client side.

Parameters
descriptionDescription of connection
listenerIDId of local component manager (set as process name) that this method should call. Valid only in networked configuration
Returns
True if success, false otherwise
Note
If the local component manager with the client process establishes a connection successfully, the manager should inform the global component manager (GCM) of its successful connection establishment so that it registers this connection. Otherwise, the GCM cleans up the connection after timeout. This method is always executed ahead of ConnectServerSideInterface().

Implemented in mtsManagerLocal.

virtual bool mtsManagerLocalInterface::ConnectServerSideInterface ( const mtsDescriptionConnection description,
const std::string &  listenerID = "" 
)
pure virtual

Connect interfaces at server side.

Parameters
descriptionDescription of connection
listenerIDId of local component manager (set as process name) that this method should call. Valid only in networked configuration
Returns
True if success, false otherwise
Note
This method is called by the global component manager and is always executed inside ConnectClientSideInterface().

Implemented in mtsManagerLocal.

virtual bool mtsManagerLocalInterface::CreateComponentProxy ( const std::string &  componentProxyName,
const std::string &  listenerID = "" 
)
pure virtual

Create a component proxy. This should be called before an interface proxy is created.

Implemented in mtsManagerLocal.

virtual bool mtsManagerLocalInterface::CreateInterfaceProvidedProxy ( const std::string &  serverComponentProxyName,
const mtsInterfaceProvidedDescription providedInterfaceDescription,
const std::string &  listenerID = "" 
)
pure virtual

Create a provided interface proxy using InterfaceProvidedDescription

Implemented in mtsManagerLocal.

virtual bool mtsManagerLocalInterface::CreateInterfaceRequiredProxy ( const std::string &  clientComponentProxyName,
const mtsInterfaceRequiredDescription requiredInterfaceDescription,
const std::string &  listenerID = "" 
)
pure virtual

Create a required interface proxy using InterfaceRequiredDescription

Implemented in mtsManagerLocal.

virtual void mtsManagerLocalInterface::GetDescriptionOfCommand ( std::string &  description,
const std::string &  componentName,
const std::string &  providedInterfaceName,
const std::string &  commandName,
const std::string &  listenerID = "" 
)
pure virtual

Get description of a command in a provided interface

virtual void mtsManagerLocalInterface::GetDescriptionOfEventGenerator ( std::string &  description,
const std::string &  componentName,
const std::string &  providedInterfaceName,
const std::string &  eventGeneratorName,
const std::string &  listenerID = "" 
)
pure virtual

Get description of a event generator in a provided interface

virtual void mtsManagerLocalInterface::GetDescriptionOfEventHandler ( std::string &  description,
const std::string &  componentName,
const std::string &  requiredInterfaceName,
const std::string &  eventHandlerName,
const std::string &  listenerID = "" 
)
pure virtual

Get description of a function in a required interface

virtual void mtsManagerLocalInterface::GetDescriptionOfFunction ( std::string &  description,
const std::string &  componentName,
const std::string &  requiredInterfaceName,
const std::string &  functionName,
const std::string &  listenerID = "" 
)
pure virtual

Get description of a function in a required interface

virtual bool mtsManagerLocalInterface::GetInterfaceProvidedDescription ( const std::string &  serverComponentName,
const std::string &  providedInterfaceName,
mtsInterfaceProvidedDescription providedInterfaceDescription,
const std::string &  listenerID = "" 
)
pure virtual

Extract all information about provided interface such as command objects and event generators. Arguments are serialized, if any.

Parameters
serverComponentNameName of component that owns provided interface
providedInterfaceNameName of provided interface
providedInterfaceDescriptionPlaceholder to be populated with provided interface information
listenerIDClient ID that owns the component (specified by componentName argument). Valid only in the networked configuration. Set as zero (by default) and ignored in standalone mode.
Returns
True if success, false otherwise
Note
There are two cases for which this method is called. One is to support the component inspector of the global component manager and the other one is to establish a connection between components. In the latter case, this method is called whenever a client requests a new connection. With the networked configuration, this method allocates a new user id which will be passed around across networks throughout connection process.

Implemented in mtsManagerLocal.

virtual bool mtsManagerLocalInterface::GetInterfaceRequiredDescription ( const std::string &  componentName,
const std::string &  requiredInterfaceName,
mtsInterfaceRequiredDescription requiredInterfaceDescription,
const std::string &  listenerID = "" 
)
pure virtual

Extract all information about required interface such as function objects and event handlers. Arguments are serialized, if any.

Parameters
componentNameName of component
requiredInterfaceNameName of required interface
requiredInterfaceDescriptionPlaceholder to be populated with required interface information
listenerIDClient ID that owns the component (specified by componentName argument). Valid only in the networked configuration. Set as zero (by default) and ignored in standalone mode.
Returns
True if success, false otherwise

Implemented in mtsManagerLocal.

virtual void mtsManagerLocalInterface::GetNamesOfCommands ( std::vector< std::string > &  namesOfCommands,
const std::string &  componentName,
const std::string &  providedInterfaceName,
const std::string &  listenerID = "" 
)
pure virtual

Get names of all commands in a provided interface

virtual void mtsManagerLocalInterface::GetNamesOfEventGenerators ( std::vector< std::string > &  namesOfEventGenerators,
const std::string &  componentName,
const std::string &  providedInterfaceName,
const std::string &  listenerID = "" 
)
pure virtual

Get names of all event generators in a provided interface

virtual void mtsManagerLocalInterface::GetNamesOfEventHandlers ( std::vector< std::string > &  namesOfEventHandlers,
const std::string &  componentName,
const std::string &  requiredInterfaceName,
const std::string &  listenerID = "" 
)
pure virtual

Get names of all event handlers in a required interface

virtual void mtsManagerLocalInterface::GetNamesOfFunctions ( std::vector< std::string > &  namesOfFunctions,
const std::string &  componentName,
const std::string &  requiredInterfaceName,
const std::string &  listenerID = "" 
)
pure virtual

Get names of all functions in a required interface

virtual const std::string mtsManagerLocalInterface::GetProcessName ( const std::string &  listenerID = "") const
pure virtual

Returns a name of this local component manager

virtual bool mtsManagerLocalInterface::RemoveComponentProxy ( const std::string &  componentProxyName,
const std::string &  listenerID = "" 
)
pure virtual

Remove a component proxy. All the interface proxies that the proxy manages should be automatically removed when removing a component proxy.

Implemented in mtsManagerLocal.

virtual bool mtsManagerLocalInterface::RemoveInterfaceProvidedProxy ( const std::string &  componentProxyName,
const std::string &  providedInterfaceProxyName,
const std::string &  listenerID = "" 
)
pure virtual

Remove a provided interface proxy. Because a provided interface can have multiple connections with more than one required interface, this method removes a provided interface proxy only when a provided interface user counter (mtsInterfaceProvidedOrOutput::UserCounter) becomes zero.

Implemented in mtsManagerLocal.

virtual bool mtsManagerLocalInterface::RemoveInterfaceRequiredProxy ( const std::string &  componentProxyName,
const std::string &  requiredInterfaceProxyName,
const std::string &  listenerID = "" 
)
pure virtual

Remove a required interface proxy

Implemented in mtsManagerLocal.


The documentation for this class was generated from the following file: