SmartSoft Components and Communication Objects
SmartSoft Components and Communication Objects

The following resources contain documentation for SmartSoft Components and Communication Object Repositories. They have been developed using the SmartMDSD Toolchain and are ready for immediate reuse therein. For the documentation of the reference implementations of SmartSoft please refer to the doxygen documentation of ACE/SmartSoft or CORBA/SmartSoft.

website-overview-component-commobj.png
SmartSoft Component, Communication Objects and Services

Components

The component hull provides a stable interface between the internal structure of a component (inner view of a component) and its outside view (services, for the system integrator). Within components, component developers find a structure to implement algorithms, reuse libraries and communicate with other parts of the system through services.

The section Components contains descriptions and documentation of available components for immediate reuse.

Services

A service is a combination of communication object(s) (e.g. from Communication Objects) and communication pattern(s) (as defined by SmartSoft). A communication pattern connects the externally visible service (the stable outer view) with the internally visible set of access methods (the stable inner view) for this service. Technically, generic predefined communication patterns become services by binding one given communication pattern with communication object(s).

For more information on communication patterns, please refer to http://servicerobotik-ulm.de/drupal/?q=node/39 or ACE/SmartSoft

Communication Objects

Communication Objects define the data structure (content) to be transmitted via a communication pattern between components. Communication objects are ordinary C++-like objects decorated with additional member functions for data access and internal use by the framework.

The following data types are available for attributes of the communication object:

Besides communication objects, the following data structures can be defined. However, they are not for direct transmission between components but to assist in providing additional structure within a communication object:

The section Communication Objects contains descriptions and documentation for available communication objects.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines