Public Member Functions

openjaus::core::TransportInterface Class Reference

Provides an abstract interface for the Transport service. More...

#include <TransportInterface.h>

Inherited by openjaus::core::Transport.

List of all members.

Public Member Functions

virtual ~TransportInterface ()
virtual bool enqueue (model::Trigger *trigger)=0
 Convert the destination address into an unsigned integer such that the ComponentID maps to the least significant byte, NodeID to the next least significant byte and SubsystemID maps onto the remaining two bytes of the integer.
virtual bool broadcastLocalEnqueue (model::Trigger *trigger)=0
 Package the message as specified by the transport layer specification and send it to all endpoints in the local subsystem.
virtual bool broadcastGlobalEnqueue (model::Trigger *trigger)=0
 Package the message as specified by the transport layer specification and send it to all endpoints on all subsystems.
virtual bool sendMessage (model::Trigger *trigger)=0
 SendMessage action with input SendMessage.
virtual bool broadcastToNode (model::Trigger *trigger)=0
 Broadcasts message to all components within the local node Broadcasts message to all components within the local node.
virtual bool broadcastToSubsystem (model::Trigger *trigger)=0
 Broadcasts a given message to all nodes in the local subsystem (equivalent to broadcast local enqueue) Broadcasts a given message to all nodes in the local subsystem (equivalent to broadcast local enqueue).
virtual bool broadcastToSystem (model::Trigger *trigger)=0
 Broadcasts the message to all subsystems on the JAUS network (equivalent to broadcast global enqueue) Broadcasts the message to all subsystems on the JAUS network (equivalent to broadcast global enqueue).
virtual bool checkTransportPolicy (model::Trigger *trigger)=0
 CheckTransportPolicy action with input CheckTransportPolicy.
virtual ReportTransportPolicy getReportTransportPolicy (QueryTransportPolicy *queryTransportPolicy)=0
 Send action for ReportTransportPolicy with input message QueryTransportPolicy.
virtual bool storeTransportPolicy (ReportTransportPolicy *reportTransportPolicy)=0
 StoreTransportPolicy action with input ReportTransportPolicy.

Detailed Description

The transport service acts as an interface to the JAUS transport layer. It models an abstract bi-directional communication channel (input queue and output queue) whose primary function is to provide the capability of sending messages to a single destination endpoint or broadcasting messages to all endpoints in the system, and to receive a message from any source endpoint. It also provides the capability to prioritize the delivery of sent messages. service establishes a communication endpoint whose address is defined by a triple {SubsystemID, NodeID, ComponentID} as specified by the Send and Receive internal events. Other services that need to utilize the communication channel provided by the transport service must inherit from the transport service.

URI: urn:jaus:jss:core:Transport

Version: 1.0

Inherits From:


Constructor & Destructor Documentation

virtual openjaus::core::TransportInterface::~TransportInterface (  )  [inline, virtual]

Member Function Documentation

virtual bool openjaus::core::TransportInterface::broadcastGlobalEnqueue ( model::Trigger trigger  )  [pure virtual]

Package the message as specified by the transport layer specification and send it to all endpoints on all subsystems.

Parameters:
[in] trigger - Input Trigger.
Returns:
Whether the message was properly processed by this action.

Implemented in openjaus::core::Transport.

virtual bool openjaus::core::TransportInterface::broadcastLocalEnqueue ( model::Trigger trigger  )  [pure virtual]

Package the message as specified by the transport layer specification and send it to all endpoints in the local subsystem.

Parameters:
[in] trigger - Input Trigger.
Returns:
Whether the message was properly processed by this action.

Implemented in openjaus::core::Transport.

virtual bool openjaus::core::TransportInterface::broadcastToNode ( model::Trigger trigger  )  [pure virtual]
Parameters:
[in] trigger - Input Trigger.
Returns:
Whether the message was properly processed by this action.

Implemented in openjaus::core::Transport.

virtual bool openjaus::core::TransportInterface::broadcastToSubsystem ( model::Trigger trigger  )  [pure virtual]
Parameters:
[in] trigger - Input Trigger.
Returns:
Whether the message was properly processed by this action.

Implemented in openjaus::core::Transport.

virtual bool openjaus::core::TransportInterface::broadcastToSystem ( model::Trigger trigger  )  [pure virtual]
Parameters:
[in] trigger - Input Trigger.
Returns:
Whether the message was properly processed by this action.

Implemented in openjaus::core::Transport.

virtual bool openjaus::core::TransportInterface::checkTransportPolicy ( model::Trigger trigger  )  [pure virtual]

CheckTransportPolicy action with input CheckTransportPolicy.

Parameters:
[in] trigger - Input Trigger.
Returns:
Whether the message was properly processed by this action.

Implemented in openjaus::core::Transport.

virtual bool openjaus::core::TransportInterface::enqueue ( model::Trigger trigger  )  [pure virtual]

Package the message as specified by the transport layer specification and send it to its destination as per the specified priority. Convert the destination address into an unsigned integer such that the ComponentID maps to the least significant byte, NodeID to the next least significant byte and SubsystemID maps onto the remaining two bytes of the integer. Package the message as specified by the transport layer specification and send it to its destination as per the specified priority.

Parameters:
[in] trigger - Input Trigger.
Returns:
Whether the message was properly processed by this action.

Implemented in openjaus::core::Transport.

virtual ReportTransportPolicy openjaus::core::TransportInterface::getReportTransportPolicy ( QueryTransportPolicy queryTransportPolicy  )  [pure virtual]

Send action for ReportTransportPolicy with input message QueryTransportPolicy.

Parameters:
[in] queryTransportPolicy - Input Trigger.
Returns:
ReportTransportPolicy Output Message.

Implemented in openjaus::core::Transport.

virtual bool openjaus::core::TransportInterface::sendMessage ( model::Trigger trigger  )  [pure virtual]

SendMessage action with input SendMessage.

Parameters:
[in] trigger - Input Trigger.
Returns:
Whether the message was properly processed by this action.

Implemented in openjaus::core::Transport.

virtual bool openjaus::core::TransportInterface::storeTransportPolicy ( ReportTransportPolicy reportTransportPolicy  )  [pure virtual]

StoreTransportPolicy action with input ReportTransportPolicy.

Parameters:
[in] reportTransportPolicy - Input Trigger.
Returns:
Whether the message was properly processed by this action.

Implemented in openjaus::core::Transport.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines