Main class for creating implementations of specific JAUS messages. Each Message based class is capable of reading/writing a specific message. More...
#include <message.h>
Public Types | |
typedef Header::Priority | Priority |
typedef std::vector< Message * > | List |
typedef std::map< UShort, Message * > | Map |
Public Member Functions | |
Message (const UShort messageCode, const Address &dest=Address(), const Address &src=Address()) | |
Constructor, initializes default values. | |
virtual | ~Message () |
Destructor. | |
virtual bool | IsCommand () const =0 |
virtual int | WriteMessageBody (Packet &packet) const =0 |
virtual int | ReadMessageBody (const Packet &packet)=0 |
virtual Message * | Clone () const =0 |
virtual UInt | GetPresenceVector () const =0 |
virtual UInt | GetPresenceVectorSize () const =0 |
virtual UInt | GetPresenceVectorMask () const =0 |
virtual UShort | GetMessageCodeOfResponse () const =0 |
virtual std::string | GetMessageName () const =0 |
virtual void | ClearMessageBody ()=0 |
virtual bool | IsLargeDataSet (const unsigned int maxPayloadSize=1437) const =0 |
int | SetPriority (const Byte p=Header::Priority::Standard) |
Sets message priority. Priority affects how messages are routed by the transport layer. | |
int | SetSourceID (const Address &src) |
Sets the source ID of the message. | |
int | SetDestinationID (const Address &dest) |
Sets the destination ID of the message. | |
int | SwapSourceAndDestination () |
Swaps source and destination ID's of message. Will fail if original destination ID was broadcast. | |
void | CopyHeaderData (const Message *msg) |
Copies message header data (source/dest/priority). | |
void | ClearMessageHeader () |
Clears message header data. | |
void | ClearMessage () |
Clears all message content data (header and payload). | |
UShort | GetMessageCode () const |
Byte | GetPriority () const |
Address | GetSourceID () const |
Address | GetDestinationID () const |
bool | IsFieldPresent (const UInt presenceVector) const |
bool | AreFieldsPresent (const UInt presenceVector) const |
virtual void | Print () const |
Prints message info to console window. | |
virtual void | PrintMessageBody () const |
virtual int | RunTestCase () const |
virtual bool | IsResponseToMessage (const Message *requestingMessage) const |
Method used to verify if this Message is a response to a requesting Query or Command message. | |
virtual int | Write (Packet &packet, Header &header, const Packet *transportHeader=NULL, const bool clearPacket=true, const UShort startingSequenceNumber=0, const Byte broadcastFlag=0) const |
Writes message contents to packet for the transport layer to send. Begins writing from current write position in packet. | |
virtual int | WriteLargeDataSet (Packet::List &stream, Header::List &streamHeaders, const UShort maxPayloadSize=1437, const Packet *transportHeader=NULL, const UShort startingSequenceNumber=0, const Byte broadcastFlag=0) const |
If the IsLargeDataSet method returns true, then this method is used to convert message payload data into a multi-packet stream according to rules defined by the JAUS standards documents. | |
virtual int | Read (const Packet &packet, const Packet *transportHeader=NULL) |
Reads transport header and payload data from packet, saving to data members of class. | |
virtual int | ReadLargeDataSet (const Packet::List &stream, const Packet *transportHeader=NULL) |
If the Transport services of a component receive a multi-packet stream for a message, this method is used to read the contents. | |
virtual int | ReadLargeDataSet (const std::map< UShort, Packet > &stream, const Packet *transportHeader=NULL) |
If the Transport services of a component receive a multi-packet stream for a message, this method is used to read the contents. | |
Protected Attributes | |
Byte | mPriority |
Message priority. | |
UShort | mMessageCode |
Message payload type (message code). | |
Address | mSourceID |
Source ID of the message. | |
Address | mDestinationID |
Destination ID of the message. |
Main class for creating implementations of specific JAUS messages. Each Message based class is capable of reading/writing a specific message.
All message classes inherit from this interface. It requies the child class to implement methods for serializing/writing and de-serializing/reading message data from a Packet structure. It also has methods for making message duplicates. Each message can read/write a whole message or just the message body.
Definition at line 67 of file message.h.
typedef std::vector<Message*> JAUS::Message::List |
Reimplemented in JAUS::QueryServices, JAUS::DeleteElement, and JAUS::ReportElementList.
typedef std::map<UShort, Message*> JAUS::Message::Map |
Message::Message | ( | const UShort | messageCode, |
const Address & | dest = Address() , |
||
const Address & | src = Address() |
||
) |
Constructor, initializes default values.
[in] | messageCode | The type of message being defined. |
[in] | src | Source ID of message sender. |
[in] | dest | Destination ID of message. |
Definition at line 62 of file message.cpp.
Message::~Message | ( | ) | [virtual] |
Destructor.
Definition at line 77 of file message.cpp.
bool JAUS::Message::AreFieldsPresent | ( | const UInt | presenceVector ) | const [inline] |
void Message::ClearMessage | ( | ) |
Clears all message content data (header and payload).
Definition at line 200 of file message.cpp.
virtual void JAUS::Message::ClearMessageBody | ( | ) | [pure virtual] |
Implemented in JAUS::ConfirmControl, JAUS::QueryAuthority, JAUS::QueryControl, JAUS::QueryTimeout, JAUS::RejectControl, JAUS::ReleaseControl, JAUS::ReportAuthority, JAUS::ReportControl, JAUS::ReportTimeout, JAUS::RequestControl, JAUS::SetAuthority, JAUS::QueryConfiguration, JAUS::QueryIdentification, JAUS::QueryServices, JAUS::QuerySubsystemList, JAUS::RegisterServices, JAUS::ReportConfiguration, JAUS::ReportIdentification, JAUS::ReportServices, JAUS::ReportSubsystemList, JAUS::CancelEvent, JAUS::ConfirmEventRequest, JAUS::CreateEvent, JAUS::Event, JAUS::QueryEvents, JAUS::RejectEventRequest, JAUS::ReportEvents, JAUS::UpdateEvent, JAUS::QueryHeartbeatPulse, JAUS::ReportHeartbeatPulse, JAUS::ClearEmergency, JAUS::QueryStatus, JAUS::ReportStatus, JAUS::Reset, JAUS::Resume, JAUS::SetEmergency, JAUS::Shutdown, JAUS::Standby, JAUS::QueryTime, JAUS::ReportTime, JAUS::SetTime, JAUS::QueryAudio, JAUS::ReportAudio, JAUS::QueryMicrocontrollerState, JAUS::ReportMicrocontrollerState, JAUS::SetMicrocontrollerState, JAUS::QueryLocalRangeScan, JAUS::QueryRangeSensorConfiguration, JAUS::ReportLocalRangeScan, JAUS::ReportRangeSensorConfiguration, JAUS::QueryCameraCount, JAUS::QueryImage, JAUS::ReportCameraCount, JAUS::ReportImage, JAUS::QueryAccelerationLimit, JAUS::QueryGlobalPathSegment, JAUS::QueryGlobalVector, JAUS::QueryGlobalWaypoint, JAUS::QueryLocalPathSegment, JAUS::QueryLocalVector, JAUS::QueryLocalWaypoint, JAUS::QueryTravelSpeed, JAUS::QueryVelocityCommand, JAUS::QueryWrenchEffort, JAUS::ReportAccelerationLimit, JAUS::ReportGlobalPathSegment, JAUS::ReportGlobalVector, JAUS::ReportGlobalWaypoint, JAUS::ReportLocalPathSegment, JAUS::ReportLocalVector, JAUS::ReportLocalWaypoint, JAUS::ReportTravelSpeed, JAUS::ReportVelocityCommand, JAUS::ReportWrenchEffort, JAUS::SetAccelerationLimit, JAUS::SetGlobalPathSegment, JAUS::SetGlobalVector, JAUS::SetGlobalWaypoint, JAUS::SetLocalPathSegment, JAUS::SetLocalVector, JAUS::SetLocalWaypoint, JAUS::SetTravelSpeed, JAUS::SetVelocityCommand, JAUS::SetWrenchEffort, JAUS::ConfirmElementRequest, JAUS::DeleteElement, JAUS::ExecuteList, JAUS::QueryActiveElement, JAUS::QueryElement, JAUS::QueryElementCount, JAUS::QueryElementList, JAUS::RejectElementRequest, JAUS::ReportActiveElement, JAUS::ReportElement, JAUS::ReportElementCount, JAUS::ReportElementList, JAUS::SetElement, JAUS::QueryAccelerationState, JAUS::QueryGeomagneticProperty, JAUS::QueryGlobalPose, JAUS::QueryLocalPose, JAUS::QueryVelocityState, JAUS::ReportAccelerationState, JAUS::ReportGeomagneticProperty, JAUS::ReportGlobalPose, JAUS::ReportLocalPose, JAUS::ReportVelocityState, JAUS::SetGeomagneticProperty, JAUS::SetGlobalPose, and JAUS::SetLocalPose.
void Message::ClearMessageHeader | ( | ) |
Clears message header data.
Definition at line 187 of file message.cpp.
virtual Message* JAUS::Message::Clone | ( | ) | const [pure virtual] |
Implemented in JAUS::ConfirmControl, JAUS::QueryAuthority, JAUS::QueryControl, JAUS::QueryTimeout, JAUS::RejectControl, JAUS::ReleaseControl, JAUS::ReportAuthority, JAUS::ReportControl, JAUS::ReportTimeout, JAUS::RequestControl, JAUS::SetAuthority, JAUS::QueryConfiguration, JAUS::QueryIdentification, JAUS::QueryServices, JAUS::QuerySubsystemList, JAUS::RegisterServices, JAUS::ReportConfiguration, JAUS::ReportIdentification, JAUS::ReportServices, JAUS::ReportSubsystemList, JAUS::CancelEvent, JAUS::ConfirmEventRequest, JAUS::CreateEvent, JAUS::Event, JAUS::QueryEvents, JAUS::RejectEventRequest, JAUS::ReportEvents, JAUS::UpdateEvent, JAUS::QueryHeartbeatPulse, JAUS::ReportHeartbeatPulse, JAUS::ClearEmergency, JAUS::QueryStatus, JAUS::ReportStatus, JAUS::Reset, JAUS::Resume, JAUS::SetEmergency, JAUS::Shutdown, JAUS::Standby, JAUS::QueryTime, JAUS::ReportTime, JAUS::SetTime, JAUS::QueryAudio, JAUS::ReportAudio, JAUS::QueryMicrocontrollerState, JAUS::ReportMicrocontrollerState, JAUS::SetMicrocontrollerState, JAUS::QueryLocalRangeScan, JAUS::QueryRangeSensorConfiguration, JAUS::ReportLocalRangeScan, JAUS::ReportRangeSensorConfiguration, JAUS::QueryCameraCount, JAUS::QueryImage, JAUS::ReportCameraCount, JAUS::ReportImage, JAUS::QueryAccelerationLimit, JAUS::QueryGlobalPathSegment, JAUS::QueryGlobalVector, JAUS::QueryGlobalWaypoint, JAUS::QueryLocalPathSegment, JAUS::QueryLocalVector, JAUS::QueryLocalWaypoint, JAUS::QueryTravelSpeed, JAUS::QueryVelocityCommand, JAUS::QueryWrenchEffort, JAUS::ReportAccelerationLimit, JAUS::ReportGlobalPathSegment, JAUS::ReportGlobalVector, JAUS::ReportGlobalWaypoint, JAUS::ReportLocalPathSegment, JAUS::ReportLocalVector, JAUS::ReportLocalWaypoint, JAUS::ReportTravelSpeed, JAUS::ReportVelocityCommand, JAUS::ReportWrenchEffort, JAUS::SetAccelerationLimit, JAUS::SetGlobalPathSegment, JAUS::SetGlobalVector, JAUS::SetGlobalWaypoint, JAUS::SetLocalPathSegment, JAUS::SetLocalVector, JAUS::SetLocalWaypoint, JAUS::SetTravelSpeed, JAUS::SetVelocityCommand, JAUS::SetWrenchEffort, JAUS::ConfirmElementRequest, JAUS::DeleteElement, JAUS::ExecuteList, JAUS::QueryActiveElement, JAUS::QueryElement, JAUS::QueryElementCount, JAUS::QueryElementList, JAUS::RejectElementRequest, JAUS::ReportActiveElement, JAUS::ReportElement, JAUS::ReportElementCount, JAUS::ReportElementList, JAUS::SetElement, JAUS::QueryAccelerationState, JAUS::QueryGeomagneticProperty, JAUS::QueryGlobalPose, JAUS::QueryLocalPose, JAUS::QueryVelocityState, JAUS::ReportAccelerationState, JAUS::ReportGeomagneticProperty, JAUS::ReportGlobalPose, JAUS::ReportLocalPose, JAUS::ReportVelocityState, JAUS::SetGeomagneticProperty, JAUS::SetGlobalPose, and JAUS::SetLocalPose.
void Message::CopyHeaderData | ( | const Message * | msg ) |
Copies message header data (source/dest/priority).
[in] | msg | Message to copy data from. |
Definition at line 171 of file message.cpp.
Address JAUS::Message::GetDestinationID | ( | ) | const [inline] |
virtual UShort JAUS::Message::GetMessageCodeOfResponse | ( | ) | const [pure virtual] |
Implemented in JAUS::ConfirmControl, JAUS::QueryAuthority, JAUS::QueryControl, JAUS::QueryTimeout, JAUS::RejectControl, JAUS::ReleaseControl, JAUS::ReportAuthority, JAUS::ReportControl, JAUS::ReportTimeout, JAUS::RequestControl, JAUS::SetAuthority, JAUS::QueryConfiguration, JAUS::QueryIdentification, JAUS::QueryServices, JAUS::QuerySubsystemList, JAUS::RegisterServices, JAUS::ReportConfiguration, JAUS::ReportIdentification, JAUS::ReportServices, JAUS::ReportSubsystemList, JAUS::CancelEvent, JAUS::ConfirmEventRequest, JAUS::CreateEvent, JAUS::Event, JAUS::QueryEvents, JAUS::RejectEventRequest, JAUS::ReportEvents, JAUS::UpdateEvent, JAUS::QueryHeartbeatPulse, JAUS::ReportHeartbeatPulse, JAUS::ClearEmergency, JAUS::QueryStatus, JAUS::ReportStatus, JAUS::Reset, JAUS::Resume, JAUS::SetEmergency, JAUS::Shutdown, JAUS::Standby, JAUS::QueryTime, JAUS::ReportTime, JAUS::SetTime, JAUS::QueryAudio, JAUS::ReportAudio, JAUS::QueryMicrocontrollerState, JAUS::ReportMicrocontrollerState, JAUS::SetMicrocontrollerState, JAUS::QueryLocalRangeScan, JAUS::QueryRangeSensorConfiguration, JAUS::ReportLocalRangeScan, JAUS::ReportRangeSensorConfiguration, JAUS::QueryCameraCount, JAUS::QueryImage, JAUS::ReportCameraCount, JAUS::ReportImage, JAUS::QueryAccelerationLimit, JAUS::QueryGlobalPathSegment, JAUS::QueryGlobalVector, JAUS::QueryGlobalWaypoint, JAUS::QueryLocalPathSegment, JAUS::QueryLocalVector, JAUS::QueryLocalWaypoint, JAUS::QueryTravelSpeed, JAUS::QueryVelocityCommand, JAUS::QueryWrenchEffort, JAUS::ReportAccelerationLimit, JAUS::ReportGlobalPathSegment, JAUS::ReportGlobalVector, JAUS::ReportGlobalWaypoint, JAUS::ReportLocalPathSegment, JAUS::ReportLocalVector, JAUS::ReportLocalWaypoint, JAUS::ReportTravelSpeed, JAUS::ReportVelocityCommand, JAUS::ReportWrenchEffort, JAUS::SetAccelerationLimit, JAUS::SetGlobalPathSegment, JAUS::SetGlobalVector, JAUS::SetGlobalWaypoint, JAUS::SetLocalPathSegment, JAUS::SetLocalVector, JAUS::SetLocalWaypoint, JAUS::SetTravelSpeed, JAUS::SetVelocityCommand, JAUS::SetWrenchEffort, JAUS::ConfirmElementRequest, JAUS::DeleteElement, JAUS::ExecuteList, JAUS::QueryActiveElement, JAUS::QueryElement, JAUS::QueryElementCount, JAUS::QueryElementList, JAUS::RejectElementRequest, JAUS::ReportActiveElement, JAUS::ReportElement, JAUS::ReportElementCount, JAUS::ReportElementList, JAUS::SetElement, JAUS::QueryAccelerationState, JAUS::QueryGeomagneticProperty, JAUS::QueryGlobalPose, JAUS::QueryLocalPose, JAUS::QueryVelocityState, JAUS::ReportAccelerationState, JAUS::ReportGeomagneticProperty, JAUS::ReportGlobalPose, JAUS::ReportLocalPose, JAUS::ReportVelocityState, JAUS::SetGeomagneticProperty, JAUS::SetGlobalPose, and JAUS::SetLocalPose.
virtual std::string JAUS::Message::GetMessageName | ( | ) | const [pure virtual] |
Implemented in JAUS::ConfirmControl, JAUS::QueryAuthority, JAUS::QueryControl, JAUS::QueryTimeout, JAUS::RejectControl, JAUS::ReleaseControl, JAUS::ReportAuthority, JAUS::ReportControl, JAUS::ReportTimeout, JAUS::RequestControl, JAUS::SetAuthority, JAUS::QueryConfiguration, JAUS::QueryIdentification, JAUS::QueryServices, JAUS::QuerySubsystemList, JAUS::RegisterServices, JAUS::ReportConfiguration, JAUS::ReportIdentification, JAUS::ReportServices, JAUS::ReportSubsystemList, JAUS::CancelEvent, JAUS::ConfirmEventRequest, JAUS::CreateEvent, JAUS::Event, JAUS::QueryEvents, JAUS::RejectEventRequest, JAUS::ReportEvents, JAUS::UpdateEvent, JAUS::QueryHeartbeatPulse, JAUS::ReportHeartbeatPulse, JAUS::ClearEmergency, JAUS::QueryStatus, JAUS::ReportStatus, JAUS::Reset, JAUS::Resume, JAUS::SetEmergency, JAUS::Shutdown, JAUS::Standby, JAUS::QueryTime, JAUS::ReportTime, JAUS::SetTime, JAUS::QueryAudio, JAUS::ReportAudio, JAUS::QueryMicrocontrollerState, JAUS::ReportMicrocontrollerState, JAUS::SetMicrocontrollerState, JAUS::QueryLocalRangeScan, JAUS::QueryRangeSensorConfiguration, JAUS::ReportLocalRangeScan, JAUS::ReportRangeSensorConfiguration, JAUS::QueryCameraCount, JAUS::QueryImage, JAUS::ReportCameraCount, JAUS::ReportImage, JAUS::QueryAccelerationLimit, JAUS::QueryGlobalPathSegment, JAUS::QueryGlobalVector, JAUS::QueryGlobalWaypoint, JAUS::QueryLocalPathSegment, JAUS::QueryLocalVector, JAUS::QueryLocalWaypoint, JAUS::QueryTravelSpeed, JAUS::QueryVelocityCommand, JAUS::QueryWrenchEffort, JAUS::ReportAccelerationLimit, JAUS::ReportGlobalPathSegment, JAUS::ReportGlobalVector, JAUS::ReportGlobalWaypoint, JAUS::ReportLocalPathSegment, JAUS::ReportLocalVector, JAUS::ReportLocalWaypoint, JAUS::ReportTravelSpeed, JAUS::ReportVelocityCommand, JAUS::ReportWrenchEffort, JAUS::SetAccelerationLimit, JAUS::SetGlobalPathSegment, JAUS::SetGlobalVector, JAUS::SetGlobalWaypoint, JAUS::SetLocalPathSegment, JAUS::SetLocalVector, JAUS::SetLocalWaypoint, JAUS::SetTravelSpeed, JAUS::SetVelocityCommand, JAUS::SetWrenchEffort, JAUS::ConfirmElementRequest, JAUS::DeleteElement, JAUS::ExecuteList, JAUS::QueryActiveElement, JAUS::QueryElement, JAUS::QueryElementCount, JAUS::QueryElementList, JAUS::RejectElementRequest, JAUS::ReportActiveElement, JAUS::ReportElement, JAUS::ReportElementCount, JAUS::ReportElementList, JAUS::SetElement, JAUS::QueryAccelerationState, JAUS::QueryGeomagneticProperty, JAUS::QueryGlobalPose, JAUS::QueryLocalPose, JAUS::QueryVelocityState, JAUS::ReportAccelerationState, JAUS::ReportGeomagneticProperty, JAUS::ReportGlobalPose, JAUS::ReportLocalPose, JAUS::ReportVelocityState, JAUS::SetGeomagneticProperty, JAUS::SetGlobalPose, and JAUS::SetLocalPose.
virtual UInt JAUS::Message::GetPresenceVector | ( | ) | const [pure virtual] |
Implemented in JAUS::ConfirmControl, JAUS::QueryAuthority, JAUS::QueryControl, JAUS::QueryTimeout, JAUS::RejectControl, JAUS::ReleaseControl, JAUS::ReportAuthority, JAUS::ReportControl, JAUS::ReportTimeout, JAUS::RequestControl, JAUS::SetAuthority, JAUS::QueryConfiguration, JAUS::QueryIdentification, JAUS::QueryServices, JAUS::QuerySubsystemList, JAUS::RegisterServices, JAUS::ReportConfiguration, JAUS::ReportIdentification, JAUS::ReportServices, JAUS::ReportSubsystemList, JAUS::CancelEvent, JAUS::ConfirmEventRequest, JAUS::CreateEvent, JAUS::Event, JAUS::QueryEvents, JAUS::RejectEventRequest, JAUS::ReportEvents, JAUS::UpdateEvent, JAUS::QueryHeartbeatPulse, JAUS::ReportHeartbeatPulse, JAUS::ClearEmergency, JAUS::QueryStatus, JAUS::ReportStatus, JAUS::Reset, JAUS::Resume, JAUS::SetEmergency, JAUS::Shutdown, JAUS::Standby, JAUS::QueryTime, JAUS::ReportTime, JAUS::SetTime, JAUS::QueryAudio, JAUS::ReportAudio, JAUS::QueryMicrocontrollerState, JAUS::ReportMicrocontrollerState, JAUS::SetMicrocontrollerState, JAUS::QueryLocalRangeScan, JAUS::QueryRangeSensorConfiguration, JAUS::ReportLocalRangeScan, JAUS::ReportRangeSensorConfiguration, JAUS::QueryCameraCount, JAUS::QueryImage, JAUS::ReportCameraCount, JAUS::ReportImage, JAUS::QueryAccelerationLimit, JAUS::QueryGlobalPathSegment, JAUS::QueryGlobalVector, JAUS::QueryGlobalWaypoint, JAUS::QueryLocalPathSegment, JAUS::QueryLocalVector, JAUS::QueryLocalWaypoint, JAUS::QueryTravelSpeed, JAUS::QueryVelocityCommand, JAUS::QueryWrenchEffort, JAUS::ReportAccelerationLimit, JAUS::ReportGlobalPathSegment, JAUS::ReportGlobalVector, JAUS::ReportGlobalWaypoint, JAUS::ReportLocalPathSegment, JAUS::ReportLocalVector, JAUS::ReportLocalWaypoint, JAUS::ReportTravelSpeed, JAUS::ReportVelocityCommand, JAUS::ReportWrenchEffort, JAUS::SetAccelerationLimit, JAUS::SetGlobalPathSegment, JAUS::SetGlobalVector, JAUS::SetGlobalWaypoint, JAUS::SetLocalPathSegment, JAUS::SetLocalVector, JAUS::SetLocalWaypoint, JAUS::SetTravelSpeed, JAUS::SetVelocityCommand, JAUS::SetWrenchEffort, JAUS::ConfirmElementRequest, JAUS::DeleteElement, JAUS::ExecuteList, JAUS::QueryActiveElement, JAUS::QueryElement, JAUS::QueryElementCount, JAUS::QueryElementList, JAUS::RejectElementRequest, JAUS::ReportActiveElement, JAUS::ReportElement, JAUS::ReportElementCount, JAUS::ReportElementList, JAUS::SetElement, JAUS::QueryAccelerationState, JAUS::QueryGeomagneticProperty, JAUS::QueryGlobalPose, JAUS::QueryLocalPose, JAUS::QueryVelocityState, JAUS::ReportAccelerationState, JAUS::ReportGeomagneticProperty, JAUS::ReportGlobalPose, JAUS::ReportLocalPose, JAUS::ReportVelocityState, JAUS::SetGeomagneticProperty, JAUS::SetGlobalPose, and JAUS::SetLocalPose.
virtual UInt JAUS::Message::GetPresenceVectorMask | ( | ) | const [pure virtual] |
Implemented in JAUS::ConfirmControl, JAUS::QueryAuthority, JAUS::QueryControl, JAUS::QueryTimeout, JAUS::RejectControl, JAUS::ReleaseControl, JAUS::ReportAuthority, JAUS::ReportControl, JAUS::ReportTimeout, JAUS::RequestControl, JAUS::SetAuthority, JAUS::QueryConfiguration, JAUS::QueryIdentification, JAUS::QueryServices, JAUS::QuerySubsystemList, JAUS::RegisterServices, JAUS::ReportConfiguration, JAUS::ReportIdentification, JAUS::ReportServices, JAUS::ReportSubsystemList, JAUS::CancelEvent, JAUS::ConfirmEventRequest, JAUS::CreateEvent, JAUS::Event, JAUS::QueryEvents, JAUS::RejectEventRequest, JAUS::ReportEvents, JAUS::UpdateEvent, JAUS::QueryHeartbeatPulse, JAUS::ReportHeartbeatPulse, JAUS::ClearEmergency, JAUS::QueryStatus, JAUS::ReportStatus, JAUS::Reset, JAUS::Resume, JAUS::SetEmergency, JAUS::Shutdown, JAUS::Standby, JAUS::QueryTime, JAUS::ReportTime, JAUS::SetTime, JAUS::QueryAudio, JAUS::ReportAudio, JAUS::QueryMicrocontrollerState, JAUS::ReportMicrocontrollerState, JAUS::SetMicrocontrollerState, JAUS::QueryLocalRangeScan, JAUS::QueryRangeSensorConfiguration, JAUS::ReportLocalRangeScan, JAUS::ReportRangeSensorConfiguration, JAUS::QueryCameraCount, JAUS::QueryImage, JAUS::ReportCameraCount, JAUS::ReportImage, JAUS::QueryAccelerationLimit, JAUS::QueryGlobalPathSegment, JAUS::QueryGlobalVector, JAUS::QueryGlobalWaypoint, JAUS::QueryLocalPathSegment, JAUS::QueryLocalVector, JAUS::QueryLocalWaypoint, JAUS::QueryTravelSpeed, JAUS::QueryVelocityCommand, JAUS::QueryWrenchEffort, JAUS::ReportAccelerationLimit, JAUS::ReportGlobalPathSegment, JAUS::ReportGlobalVector, JAUS::ReportGlobalWaypoint, JAUS::ReportLocalPathSegment, JAUS::ReportLocalVector, JAUS::ReportLocalWaypoint, JAUS::ReportTravelSpeed, JAUS::ReportVelocityCommand, JAUS::ReportWrenchEffort, JAUS::SetAccelerationLimit, JAUS::SetGlobalPathSegment, JAUS::SetGlobalVector, JAUS::SetGlobalWaypoint, JAUS::SetLocalPathSegment, JAUS::SetLocalVector, JAUS::SetLocalWaypoint, JAUS::SetTravelSpeed, JAUS::SetVelocityCommand, JAUS::SetWrenchEffort, JAUS::ConfirmElementRequest, JAUS::DeleteElement, JAUS::ExecuteList, JAUS::QueryActiveElement, JAUS::QueryElement, JAUS::QueryElementCount, JAUS::QueryElementList, JAUS::RejectElementRequest, JAUS::ReportActiveElement, JAUS::ReportElement, JAUS::ReportElementCount, JAUS::ReportElementList, JAUS::SetElement, JAUS::QueryAccelerationState, JAUS::QueryGeomagneticProperty, JAUS::QueryGlobalPose, JAUS::QueryLocalPose, JAUS::QueryVelocityState, JAUS::ReportAccelerationState, JAUS::ReportGeomagneticProperty, JAUS::ReportGlobalPose, JAUS::ReportLocalPose, JAUS::ReportVelocityState, JAUS::SetGeomagneticProperty, JAUS::SetGlobalPose, and JAUS::SetLocalPose.
virtual UInt JAUS::Message::GetPresenceVectorSize | ( | ) | const [pure virtual] |
Implemented in JAUS::ConfirmControl, JAUS::QueryAuthority, JAUS::QueryControl, JAUS::QueryTimeout, JAUS::RejectControl, JAUS::ReleaseControl, JAUS::ReportAuthority, JAUS::ReportControl, JAUS::ReportTimeout, JAUS::RequestControl, JAUS::SetAuthority, JAUS::QueryConfiguration, JAUS::QueryIdentification, JAUS::QueryServices, JAUS::QuerySubsystemList, JAUS::RegisterServices, JAUS::ReportConfiguration, JAUS::ReportIdentification, JAUS::ReportServices, JAUS::ReportSubsystemList, JAUS::CancelEvent, JAUS::ConfirmEventRequest, JAUS::CreateEvent, JAUS::Event, JAUS::QueryEvents, JAUS::RejectEventRequest, JAUS::ReportEvents, JAUS::UpdateEvent, JAUS::QueryHeartbeatPulse, JAUS::ReportHeartbeatPulse, JAUS::ClearEmergency, JAUS::QueryStatus, JAUS::ReportStatus, JAUS::Reset, JAUS::Resume, JAUS::SetEmergency, JAUS::Shutdown, JAUS::Standby, JAUS::QueryTime, JAUS::ReportTime, JAUS::SetTime, JAUS::QueryAudio, JAUS::ReportAudio, JAUS::QueryMicrocontrollerState, JAUS::ReportMicrocontrollerState, JAUS::SetMicrocontrollerState, JAUS::QueryLocalRangeScan, JAUS::QueryRangeSensorConfiguration, JAUS::ReportLocalRangeScan, JAUS::ReportRangeSensorConfiguration, JAUS::QueryCameraCount, JAUS::QueryImage, JAUS::ReportCameraCount, JAUS::ReportImage, JAUS::QueryAccelerationLimit, JAUS::QueryGlobalPathSegment, JAUS::QueryGlobalVector, JAUS::QueryGlobalWaypoint, JAUS::QueryLocalPathSegment, JAUS::QueryLocalVector, JAUS::QueryLocalWaypoint, JAUS::QueryTravelSpeed, JAUS::QueryVelocityCommand, JAUS::QueryWrenchEffort, JAUS::ReportAccelerationLimit, JAUS::ReportGlobalPathSegment, JAUS::ReportGlobalVector, JAUS::ReportGlobalWaypoint, JAUS::ReportLocalPathSegment, JAUS::ReportLocalVector, JAUS::ReportLocalWaypoint, JAUS::ReportTravelSpeed, JAUS::ReportVelocityCommand, JAUS::ReportWrenchEffort, JAUS::SetAccelerationLimit, JAUS::SetGlobalPathSegment, JAUS::SetGlobalVector, JAUS::SetGlobalWaypoint, JAUS::SetLocalPathSegment, JAUS::SetLocalVector, JAUS::SetLocalWaypoint, JAUS::SetTravelSpeed, JAUS::SetVelocityCommand, JAUS::SetWrenchEffort, JAUS::ConfirmElementRequest, JAUS::DeleteElement, JAUS::ExecuteList, JAUS::QueryActiveElement, JAUS::QueryElement, JAUS::QueryElementCount, JAUS::QueryElementList, JAUS::RejectElementRequest, JAUS::ReportActiveElement, JAUS::ReportElement, JAUS::ReportElementCount, JAUS::ReportElementList, JAUS::SetElement, JAUS::QueryAccelerationState, JAUS::QueryGeomagneticProperty, JAUS::QueryGlobalPose, JAUS::QueryLocalPose, JAUS::QueryVelocityState, JAUS::ReportAccelerationState, JAUS::ReportGeomagneticProperty, JAUS::ReportGlobalPose, JAUS::ReportLocalPose, JAUS::ReportVelocityState, JAUS::SetGeomagneticProperty, JAUS::SetGlobalPose, and JAUS::SetLocalPose.
virtual bool JAUS::Message::IsCommand | ( | ) | const [pure virtual] |
Implemented in JAUS::ConfirmControl, JAUS::QueryAuthority, JAUS::QueryControl, JAUS::QueryTimeout, JAUS::RejectControl, JAUS::ReleaseControl, JAUS::ReportAuthority, JAUS::ReportControl, JAUS::ReportTimeout, JAUS::RequestControl, JAUS::SetAuthority, JAUS::QueryConfiguration, JAUS::QueryIdentification, JAUS::QueryServices, JAUS::QuerySubsystemList, JAUS::RegisterServices, JAUS::ReportConfiguration, JAUS::ReportIdentification, JAUS::ReportServices, JAUS::ReportSubsystemList, JAUS::CancelEvent, JAUS::ConfirmEventRequest, JAUS::CreateEvent, JAUS::Event, JAUS::QueryEvents, JAUS::RejectEventRequest, JAUS::ReportEvents, JAUS::UpdateEvent, JAUS::QueryHeartbeatPulse, JAUS::ReportHeartbeatPulse, JAUS::ClearEmergency, JAUS::QueryStatus, JAUS::ReportStatus, JAUS::Reset, JAUS::Resume, JAUS::SetEmergency, JAUS::Shutdown, JAUS::Standby, JAUS::QueryTime, JAUS::ReportTime, JAUS::SetTime, JAUS::QueryAudio, JAUS::ReportAudio, JAUS::QueryMicrocontrollerState, JAUS::ReportMicrocontrollerState, JAUS::SetMicrocontrollerState, JAUS::QueryLocalRangeScan, JAUS::QueryRangeSensorConfiguration, JAUS::ReportLocalRangeScan, JAUS::ReportRangeSensorConfiguration, JAUS::QueryCameraCount, JAUS::QueryImage, JAUS::ReportCameraCount, JAUS::ReportImage, JAUS::QueryAccelerationLimit, JAUS::QueryGlobalPathSegment, JAUS::QueryGlobalVector, JAUS::QueryGlobalWaypoint, JAUS::QueryLocalPathSegment, JAUS::QueryLocalVector, JAUS::QueryLocalWaypoint, JAUS::QueryTravelSpeed, JAUS::QueryVelocityCommand, JAUS::QueryWrenchEffort, JAUS::ReportAccelerationLimit, JAUS::ReportGlobalPathSegment, JAUS::ReportGlobalVector, JAUS::ReportGlobalWaypoint, JAUS::ReportLocalPathSegment, JAUS::ReportLocalVector, JAUS::ReportLocalWaypoint, JAUS::ReportTravelSpeed, JAUS::ReportVelocityCommand, JAUS::ReportWrenchEffort, JAUS::SetAccelerationLimit, JAUS::SetGlobalPathSegment, JAUS::SetGlobalVector, JAUS::SetGlobalWaypoint, JAUS::SetLocalPathSegment, JAUS::SetLocalVector, JAUS::SetLocalWaypoint, JAUS::SetTravelSpeed, JAUS::SetVelocityCommand, JAUS::SetWrenchEffort, JAUS::ConfirmElementRequest, JAUS::DeleteElement, JAUS::ExecuteList, JAUS::QueryActiveElement, JAUS::QueryElement, JAUS::QueryElementCount, JAUS::QueryElementList, JAUS::RejectElementRequest, JAUS::ReportActiveElement, JAUS::ReportElement, JAUS::ReportElementCount, JAUS::ReportElementList, JAUS::SetElement, JAUS::QueryAccelerationState, JAUS::QueryGeomagneticProperty, JAUS::QueryGlobalPose, JAUS::QueryLocalPose, JAUS::QueryVelocityState, JAUS::ReportAccelerationState, JAUS::ReportGeomagneticProperty, JAUS::ReportGlobalPose, JAUS::ReportLocalPose, JAUS::ReportVelocityState, JAUS::SetGeomagneticProperty, JAUS::SetGlobalPose, and JAUS::SetLocalPose.
bool JAUS::Message::IsFieldPresent | ( | const UInt | presenceVector ) | const [inline] |
virtual bool JAUS::Message::IsLargeDataSet | ( | const unsigned int | maxPayloadSize = 1437 ) |
const [pure virtual] |
Implemented in JAUS::ConfirmControl, JAUS::QueryAuthority, JAUS::QueryControl, JAUS::QueryTimeout, JAUS::RejectControl, JAUS::ReleaseControl, JAUS::ReportAuthority, JAUS::ReportControl, JAUS::ReportTimeout, JAUS::RequestControl, JAUS::SetAuthority, JAUS::QueryConfiguration, JAUS::QueryIdentification, JAUS::QueryServices, JAUS::QuerySubsystemList, JAUS::RegisterServices, JAUS::ReportConfiguration, JAUS::ReportIdentification, JAUS::ReportServices, JAUS::ReportSubsystemList, JAUS::CancelEvent, JAUS::ConfirmEventRequest, JAUS::CreateEvent, JAUS::Event, JAUS::QueryEvents, JAUS::RejectEventRequest, JAUS::ReportEvents, JAUS::UpdateEvent, JAUS::QueryHeartbeatPulse, JAUS::ReportHeartbeatPulse, JAUS::ClearEmergency, JAUS::QueryStatus, JAUS::ReportStatus, JAUS::Reset, JAUS::Resume, JAUS::SetEmergency, JAUS::Shutdown, JAUS::Standby, JAUS::QueryTime, JAUS::ReportTime, JAUS::SetTime, JAUS::QueryAudio, JAUS::ReportAudio, JAUS::QueryMicrocontrollerState, JAUS::ReportMicrocontrollerState, JAUS::SetMicrocontrollerState, JAUS::QueryLocalRangeScan, JAUS::QueryRangeSensorConfiguration, JAUS::ReportLocalRangeScan, JAUS::ReportRangeSensorConfiguration, JAUS::QueryCameraCount, JAUS::QueryImage, JAUS::ReportCameraCount, JAUS::ReportImage, JAUS::QueryAccelerationLimit, JAUS::QueryGlobalPathSegment, JAUS::QueryGlobalVector, JAUS::QueryGlobalWaypoint, JAUS::QueryLocalPathSegment, JAUS::QueryLocalVector, JAUS::QueryLocalWaypoint, JAUS::QueryTravelSpeed, JAUS::QueryVelocityCommand, JAUS::QueryWrenchEffort, JAUS::ReportAccelerationLimit, JAUS::ReportGlobalPathSegment, JAUS::ReportGlobalVector, JAUS::ReportGlobalWaypoint, JAUS::ReportLocalPathSegment, JAUS::ReportLocalVector, JAUS::ReportLocalWaypoint, JAUS::ReportTravelSpeed, JAUS::ReportVelocityCommand, JAUS::ReportWrenchEffort, JAUS::SetAccelerationLimit, JAUS::SetGlobalPathSegment, JAUS::SetGlobalVector, JAUS::SetGlobalWaypoint, JAUS::SetLocalPathSegment, JAUS::SetLocalVector, JAUS::SetLocalWaypoint, JAUS::SetTravelSpeed, JAUS::SetVelocityCommand, JAUS::SetWrenchEffort, JAUS::ConfirmElementRequest, JAUS::DeleteElement, JAUS::ExecuteList, JAUS::QueryActiveElement, JAUS::QueryElement, JAUS::QueryElementCount, JAUS::QueryElementList, JAUS::RejectElementRequest, JAUS::ReportActiveElement, JAUS::ReportElement, JAUS::ReportElementCount, JAUS::ReportElementList, JAUS::SetElement, JAUS::QueryAccelerationState, JAUS::QueryGeomagneticProperty, JAUS::QueryGlobalPose, JAUS::QueryLocalPose, JAUS::QueryVelocityState, JAUS::ReportAccelerationState, JAUS::ReportGeomagneticProperty, JAUS::ReportGlobalPose, JAUS::ReportLocalPose, JAUS::ReportVelocityState, JAUS::SetGeomagneticProperty, JAUS::SetGlobalPose, and JAUS::SetLocalPose.
bool Message::IsResponseToMessage | ( | const Message * | requestingMessage ) | const [virtual] |
Method used to verify if this Message is a response to a requesting Query or Command message.
This method verifies that the destination ID of the requestingMessage matches the source ID of this message and that the result of GetMessageCodeOfResponse for the requestingMessage matchings the message code of this method. Overload this method to check other parameters.
[in] | requestingMessage | Original query or command message that you want to see if this message is a response to. |
Reimplemented in JAUS::CancelEvent, JAUS::CreateEvent, and JAUS::UpdateEvent.
Definition at line 239 of file message.cpp.
void Message::Print | ( | ) | const [virtual] |
Prints message info to console window.
Definition at line 214 of file message.cpp.
virtual void JAUS::Message::PrintMessageBody | ( | ) | const [inline, virtual] |
Reads transport header and payload data from packet, saving to data members of class.
[in] | packet | Serialized JAUS packet data to read. |
[in] | transportHeader | Transport header data in front of general transport header. |
Definition at line 419 of file message.cpp.
int Message::ReadLargeDataSet | ( | const Packet::List & | stream, |
const Packet * | transportHeader = NULL |
||
) | [virtual] |
If the Transport services of a component receive a multi-packet stream for a message, this method is used to read the contents.
This method should only be overloaded if you wish to optimize the de-serialization of mutli-packet streams for your message (e.g. video data). By default, this method converts the stream to a larger continuous packet to be used by the ReadMessageBody method.
[in] | stream | Multi-packet stream containing serialized message following rules of large data sets. |
[in] | transportHeader | Additional transport header data that precedes the general transport header of each packet. |
Definition at line 479 of file message.cpp.
int Message::ReadLargeDataSet | ( | const std::map< UShort, Packet > & | stream, |
const Packet * | transportHeader = NULL |
||
) | [virtual] |
If the Transport services of a component receive a multi-packet stream for a message, this method is used to read the contents.
This method should only be overloaded if you wish to optimize the de-serialization of mutli-packet streams for your message (e.g. video data). By default, this method converts the stream to a larger continuous packet to be used by the ReadMessageBody method.
[in] | stream | Multi-packet stream containing serialized message following rules of large data sets. |
[in] | transportHeader | Additional transport header data that precedes the general transport header of each packet. |
Definition at line 516 of file message.cpp.
virtual int JAUS::Message::ReadMessageBody | ( | const Packet & | packet ) | [pure virtual] |
Implemented in JAUS::ConfirmControl, JAUS::QueryAuthority, JAUS::QueryControl, JAUS::QueryTimeout, JAUS::RejectControl, JAUS::ReleaseControl, JAUS::ReportAuthority, JAUS::ReportControl, JAUS::ReportTimeout, JAUS::RequestControl, JAUS::SetAuthority, JAUS::QueryConfiguration, JAUS::QueryIdentification, JAUS::QueryServices, JAUS::QuerySubsystemList, JAUS::RegisterServices, JAUS::ReportConfiguration, JAUS::ReportIdentification, JAUS::ReportServices, JAUS::ReportSubsystemList, JAUS::CancelEvent, JAUS::ConfirmEventRequest, JAUS::CreateEvent, JAUS::Event, JAUS::QueryEvents, JAUS::RejectEventRequest, JAUS::ReportEvents, JAUS::UpdateEvent, JAUS::QueryHeartbeatPulse, JAUS::ReportHeartbeatPulse, JAUS::ClearEmergency, JAUS::QueryStatus, JAUS::ReportStatus, JAUS::Reset, JAUS::Resume, JAUS::SetEmergency, JAUS::Shutdown, JAUS::Standby, JAUS::QueryTime, JAUS::ReportTime, JAUS::SetTime, JAUS::QueryAudio, JAUS::ReportAudio, JAUS::QueryMicrocontrollerState, JAUS::ReportMicrocontrollerState, JAUS::SetMicrocontrollerState, JAUS::QueryLocalRangeScan, JAUS::QueryRangeSensorConfiguration, JAUS::ReportLocalRangeScan, JAUS::ReportRangeSensorConfiguration, JAUS::QueryCameraCount, JAUS::QueryImage, JAUS::ReportCameraCount, JAUS::ReportImage, JAUS::QueryAccelerationLimit, JAUS::QueryGlobalPathSegment, JAUS::QueryGlobalVector, JAUS::QueryGlobalWaypoint, JAUS::QueryLocalPathSegment, JAUS::QueryLocalVector, JAUS::QueryLocalWaypoint, JAUS::QueryTravelSpeed, JAUS::QueryVelocityCommand, JAUS::QueryWrenchEffort, JAUS::ReportAccelerationLimit, JAUS::ReportGlobalPathSegment, JAUS::ReportGlobalVector, JAUS::ReportGlobalWaypoint, JAUS::ReportLocalPathSegment, JAUS::ReportLocalVector, JAUS::ReportLocalWaypoint, JAUS::ReportTravelSpeed, JAUS::ReportVelocityCommand, JAUS::ReportWrenchEffort, JAUS::SetAccelerationLimit, JAUS::SetGlobalPathSegment, JAUS::SetGlobalVector, JAUS::SetGlobalWaypoint, JAUS::SetLocalPathSegment, JAUS::SetLocalVector, JAUS::SetLocalWaypoint, JAUS::SetTravelSpeed, JAUS::SetVelocityCommand, JAUS::SetWrenchEffort, JAUS::ConfirmElementRequest, JAUS::DeleteElement, JAUS::ExecuteList, JAUS::QueryActiveElement, JAUS::QueryElement, JAUS::QueryElementCount, JAUS::QueryElementList, JAUS::RejectElementRequest, JAUS::ReportActiveElement, JAUS::ReportElement, JAUS::ReportElementCount, JAUS::ReportElementList, JAUS::SetElement, JAUS::QueryAccelerationState, JAUS::QueryGeomagneticProperty, JAUS::QueryGlobalPose, JAUS::QueryLocalPose, JAUS::QueryVelocityState, JAUS::ReportAccelerationState, JAUS::ReportGeomagneticProperty, JAUS::ReportGlobalPose, JAUS::ReportLocalPose, JAUS::ReportVelocityState, JAUS::SetGeomagneticProperty, JAUS::SetGlobalPose, and JAUS::SetLocalPose.
virtual int JAUS::Message::RunTestCase | ( | ) | const [inline, virtual] |
Reimplemented in JAUS::ConfirmControl, JAUS::QueryAuthority, JAUS::QueryControl, JAUS::QueryTimeout, JAUS::RejectControl, JAUS::ReleaseControl, JAUS::ReportAuthority, JAUS::ReportControl, JAUS::ReportTimeout, JAUS::RequestControl, JAUS::SetAuthority, JAUS::QueryAccelerationLimit, JAUS::QueryGlobalPathSegment, JAUS::QueryGlobalVector, JAUS::QueryGlobalWaypoint, JAUS::QueryLocalPathSegment, JAUS::QueryLocalVector, JAUS::QueryLocalWaypoint, JAUS::QueryTravelSpeed, JAUS::QueryVelocityCommand, JAUS::QueryWrenchEffort, JAUS::ReportAccelerationLimit, JAUS::ReportGlobalPathSegment, JAUS::ReportGlobalVector, JAUS::ReportGlobalWaypoint, JAUS::ReportLocalPathSegment, JAUS::ReportLocalVector, JAUS::ReportLocalWaypoint, JAUS::ReportTravelSpeed, JAUS::ReportVelocityCommand, JAUS::ReportWrenchEffort, JAUS::SetAccelerationLimit, JAUS::SetGlobalPathSegment, JAUS::SetGlobalVector, JAUS::SetGlobalWaypoint, JAUS::SetLocalPathSegment, JAUS::SetLocalVector, JAUS::SetLocalWaypoint, JAUS::SetTravelSpeed, JAUS::SetVelocityCommand, JAUS::SetWrenchEffort, JAUS::ConfirmElementRequest, JAUS::DeleteElement, JAUS::ExecuteList, JAUS::QueryActiveElement, JAUS::QueryElement, JAUS::QueryElementCount, JAUS::QueryElementList, JAUS::RejectElementRequest, JAUS::ReportActiveElement, JAUS::ReportElement, JAUS::ReportElementCount, JAUS::ReportElementList, JAUS::SetElement, JAUS::QueryAccelerationState, JAUS::QueryGeomagneticProperty, JAUS::QueryGlobalPose, JAUS::QueryLocalPose, JAUS::QueryVelocityState, JAUS::ReportAccelerationState, JAUS::ReportGeomagneticProperty, JAUS::ReportGlobalPose, JAUS::ReportLocalPose, JAUS::ReportVelocityState, JAUS::SetGeomagneticProperty, JAUS::SetGlobalPose, and JAUS::SetLocalPose.
int Message::SetDestinationID | ( | const Address & | dest ) |
Sets the destination ID of the message.
[in] | dest | Destination ID. Must be a valid ID. |
Definition at line 132 of file message.cpp.
int Message::SetPriority | ( | const Byte | priority = Header::Priority::Standard ) |
Sets message priority. Priority affects how messages are routed by the transport layer.
[in] | priority | The priority value to set (see Header::Priority). |
Definition at line 92 of file message.cpp.
int Message::SetSourceID | ( | const Address & | src ) |
Sets the source ID of the message.
[in] | src | Source ID. Must be valid and non-broadcast. |
Definition at line 112 of file message.cpp.
int Message::SwapSourceAndDestination | ( | ) |
Swaps source and destination ID's of message. Will fail if original destination ID was broadcast.
Definition at line 151 of file message.cpp.
int Message::Write | ( | Packet & | packet, |
Header & | header, | ||
const Packet * | transportHeader = NULL , |
||
const bool | clearPacket = true , |
||
const UShort | startingSequenceNumber = 0 , |
||
const Byte | broadcastFlag = 0 |
||
) | const [virtual] |
Writes message contents to packet for the transport layer to send. Begins writing from current write position in packet.
Message contents are written to the packet following the JAUS standard.
[out] | packet | Packet to write header and payload data to. |
[out] | header | Packet transport header data. |
[in] | transportHeader | Optional parameter for transport header data to write before the general transport header. |
[in] | clearPacket | If true, packet contents are cleared before writing takes place. |
[in] | startingSequenceNumber | Sequence number to use for packets. |
[in] | broadcastFlag | Values to use to signify if message should be sent using any broadcast options (e.g. multicast). 0 = no options, 1 = local broadcast, 2 = global broadcast. |
Definition at line 272 of file message.cpp.
int Message::WriteLargeDataSet | ( | Packet::List & | stream, |
Header::List & | streamHeaders, | ||
const UShort | maxPayloadSize = 1437 , |
||
const Packet * | transportHeader = NULL , |
||
const UShort | startingSequenceNumber = 0 , |
||
const Byte | broadcastFlags = 0 |
||
) | const [virtual] |
If the IsLargeDataSet method returns true, then this method is used to convert message payload data into a multi-packet stream according to rules defined by the JAUS standards documents.
This method should only be overloaded if your message contains data larger than Header::MaxSize - Header::MinSize (e.g. image data) and you wish to optimize how data is written. By default, this method calls the WriteMessageBody method to generate a single large byte array, which is then broken up into a Packet::List for the transport layer.
[out] | stream | Multi-packet stream containing serialized message following rules of large data sets. |
[out] | streamHeaders | Headers for packet in the stream. |
[in] | maxPayloadSize | This is the maximum packet size including payload, does not include transport, General Transport Header, or Message Code (USHORT). |
[in] | transportHeader | Additional transport header data to precede the general transport header of each packet. |
[in] | startingSequenceNumber | Sequence number to use for packets. |
[in] | broadcastFlags | Values to use to signify if message should be sent using any broadcast options (e.g. multicast). 0 = no options, 1 = local broadcast, 2 = global broadcast. |
Definition at line 374 of file message.cpp.
virtual int JAUS::Message::WriteMessageBody | ( | Packet & | packet ) | const [pure virtual] |
Implemented in JAUS::ConfirmControl, JAUS::QueryAuthority, JAUS::QueryControl, JAUS::QueryTimeout, JAUS::RejectControl, JAUS::ReleaseControl, JAUS::ReportAuthority, JAUS::ReportControl, JAUS::ReportTimeout, JAUS::RequestControl, JAUS::SetAuthority, JAUS::QueryConfiguration, JAUS::QueryIdentification, JAUS::QueryServices, JAUS::QuerySubsystemList, JAUS::RegisterServices, JAUS::ReportConfiguration, JAUS::ReportIdentification, JAUS::ReportServices, JAUS::ReportSubsystemList, JAUS::CancelEvent, JAUS::ConfirmEventRequest, JAUS::CreateEvent, JAUS::Event, JAUS::QueryEvents, JAUS::RejectEventRequest, JAUS::ReportEvents, JAUS::UpdateEvent, JAUS::QueryHeartbeatPulse, JAUS::ReportHeartbeatPulse, JAUS::ClearEmergency, JAUS::QueryStatus, JAUS::ReportStatus, JAUS::Reset, JAUS::Resume, JAUS::SetEmergency, JAUS::Shutdown, JAUS::Standby, JAUS::QueryTime, JAUS::ReportTime, JAUS::SetTime, JAUS::QueryAudio, JAUS::ReportAudio, JAUS::QueryMicrocontrollerState, JAUS::ReportMicrocontrollerState, JAUS::SetMicrocontrollerState, JAUS::QueryLocalRangeScan, JAUS::QueryRangeSensorConfiguration, JAUS::ReportLocalRangeScan, JAUS::ReportRangeSensorConfiguration, JAUS::QueryCameraCount, JAUS::QueryImage, JAUS::ReportCameraCount, JAUS::ReportImage, JAUS::QueryAccelerationLimit, JAUS::QueryGlobalPathSegment, JAUS::QueryGlobalVector, JAUS::QueryGlobalWaypoint, JAUS::QueryLocalPathSegment, JAUS::QueryLocalVector, JAUS::QueryLocalWaypoint, JAUS::QueryTravelSpeed, JAUS::QueryVelocityCommand, JAUS::QueryWrenchEffort, JAUS::ReportAccelerationLimit, JAUS::ReportGlobalPathSegment, JAUS::ReportGlobalVector, JAUS::ReportGlobalWaypoint, JAUS::ReportLocalPathSegment, JAUS::ReportLocalVector, JAUS::ReportLocalWaypoint, JAUS::ReportTravelSpeed, JAUS::ReportVelocityCommand, JAUS::ReportWrenchEffort, JAUS::SetAccelerationLimit, JAUS::SetGlobalPathSegment, JAUS::SetGlobalVector, JAUS::SetGlobalWaypoint, JAUS::SetLocalPathSegment, JAUS::SetLocalVector, JAUS::SetLocalWaypoint, JAUS::SetTravelSpeed, JAUS::SetVelocityCommand, JAUS::SetWrenchEffort, JAUS::ConfirmElementRequest, JAUS::DeleteElement, JAUS::ExecuteList, JAUS::QueryActiveElement, JAUS::QueryElement, JAUS::QueryElementCount, JAUS::QueryElementList, JAUS::RejectElementRequest, JAUS::ReportActiveElement, JAUS::ReportElement, JAUS::ReportElementCount, JAUS::ReportElementList, JAUS::SetElement, JAUS::QueryAccelerationState, JAUS::QueryGeomagneticProperty, JAUS::QueryGlobalPose, JAUS::QueryLocalPose, JAUS::QueryVelocityState, JAUS::ReportAccelerationState, JAUS::ReportGeomagneticProperty, JAUS::ReportGlobalPose, JAUS::ReportLocalPose, JAUS::ReportVelocityState, JAUS::SetGeomagneticProperty, JAUS::SetGlobalPose, and JAUS::SetLocalPose.
Address JAUS::Message::mDestinationID [protected] |
UShort JAUS::Message::mMessageCode [protected] |
Byte JAUS::Message::mPriority [protected] |
Address JAUS::Message::mSourceID [protected] |