|
Safe DDS
|
Processor implementation. More...
#include <Processor.hpp>
Public Member Functions | |
| Processor (IProcessData *data_processor, IProcessDataFrag *datafrag_processor, IProcessHeartbeat *heartbeat_processor, IProcessAckNack *acknack_processor, IProcessNackFrag *nackfrag_processor, IProcessGap *gap_processor, IProcessUnknown *unknown_processor) noexcept | |
| Processor constructor. More... | |
| Processor (IProcessData *data_processor, IProcessDataFrag *datafrag_processor, IProcessHeartbeat *heartbeat_processor, IProcessAckNack *acknack_processor, IProcessNackFrag *nackfrag_processor, IProcessGap *gap_processor, IProcessUnknown *unknown_processor, ProcessorProperties processor_properties) noexcept | |
| Overload of processor constructor with configured properties. More... | |
| Processor (Reader &reader) noexcept | |
| Processor constructor with rtps::Reader. More... | |
| Processor (Writer &writer) noexcept | |
| Processor constructor with rtps::Writer. More... | |
| virtual | ~Processor () noexcept=default |
| Virtual destructor. More... | |
| Processor (const Processor &) noexcept=delete | |
| Copy deleted. More... | |
| Processor (Processor &&) noexcept=delete | |
| Movement deleted. More... | |
| Processor & | operator= (const Processor &) noexcept=delete |
| Copy operator deleted. More... | |
| Processor & | operator= (Processor &&) noexcept=delete |
| Movement operator deleted. More... | |
| ReturnCode | process_message (const memory::IConstByteArrayView &message) noexcept override |
| Process the wire protocol message. More... | |
Protected Member Functions | |
| ReturnCode | process_next_submessage (serialization::IDeserializer &dser, const memory::IConstByteArrayView &message, ProcessorState &processor_state) noexcept |
| Process next submessage in deserializer. More... | |
| ReturnCode | handle_submessage (const SubmessageHeader &subheader, const memory::IConstByteArrayView &payload, const memory::IConstByteArrayView &message, ProcessorState &processor_state) noexcept |
| Handle a deserialized submessage. More... | |
| ReturnCode | process_data_submessage (const SubmessageHeader &subheader, serialization::IDeserializer &dser, const ProcessorState &processor_state) noexcept |
| Deserialize and process DATA submessage. More... | |
| ReturnCode | process_datafrag_submessage (const SubmessageHeader &subheader, serialization::IDeserializer &dser, const ProcessorState &processor_state) noexcept |
| Deserialize and process DATAFRAG submessage. More... | |
| ReturnCode | process_heartbeat_submessage (const SubmessageHeader &subheader, serialization::IDeserializer &dser, const ProcessorState &processor_state) noexcept |
| Deserialize and process HEARTBEAT submessage. More... | |
| ReturnCode | process_gap_submessage (const SubmessageHeader &subheader, serialization::IDeserializer &dser, const ProcessorState &processor_state) noexcept |
| Deserialize and process GAP submessage. More... | |
| ReturnCode | process_acknack_submessage (const SubmessageHeader &subheader, serialization::IDeserializer &dser, const ProcessorState &processor_state) noexcept |
| Deserialize and process ACKNACK submessage. More... | |
| ReturnCode | process_nackfrag_submessage (const SubmessageHeader &subheader, serialization::IDeserializer &dser, const ProcessorState &processor_state) noexcept |
| Deserialize and process NACKFRAG submessage. More... | |
| ReturnCode | process_unknown_submessage (const memory::IConstByteArrayView &submessage, ProcessorState &processor_state) noexcept |
Protected Member Functions inherited from eprosima::safedds::protocol::IProcessor | |
| ~IProcessor () noexcept=default | |
| Protected destructor ownership defined on creation. More... | |
| IProcessor () noexcept=default | |
| Default creation. More... | |
| IProcessor (const IProcessor &) noexcept=delete | |
| Copy deleted. More... | |
| IProcessor (IProcessor &&) noexcept=delete | |
| Movement deleted. More... | |
| IProcessor & | operator= (const IProcessor &) noexcept=delete |
| Copy operator deleted. More... | |
| IProcessor & | operator= (IProcessor &&) noexcept=delete |
| Movement operator deleted. More... | |
Static Protected Member Functions | |
| static ReturnCode | process_submessage_header (serialization::IDeserializer &dser, SubmessageHeader &submessage_header) noexcept |
| Deserialize and process SubmessageHeader. More... | |
| static ReturnCode | process_infodst_submessage (const SubmessageHeader &subheader, serialization::IDeserializer &dser, ProcessorState &processor_state) noexcept |
| Deserialize and process INFO_DST submessage. More... | |
| static ReturnCode | process_infosrc_submessage (const SubmessageHeader &subheader, serialization::IDeserializer &dser, ProcessorState &processor_state) noexcept |
| Deserialize and process INFO_SCR submessage. More... | |
| static ReturnCode | process_infots_submessage (const SubmessageHeader &subheader, serialization::IDeserializer &dser, ProcessorState &processor_state) noexcept |
| Deserialize and process INFO_TS submessage. More... | |
| static ReturnCode | process_header_extension_submessage (const SubmessageHeader &subheader, const memory::IConstByteArrayView &message, serialization::IDeserializer &submsg_dser, ProcessorState &processor_state) noexcept |
| Deserialize and process HEADER_HE submessage. More... | |
| static ReturnCode | validate_processor_state (const ProcessorState &processor_state) noexcept |
| Checks current processor state. More... | |
| static ReturnCode | validate_rtps_message (Submessage< HeaderExtension > &header_extension, const memory::IConstByteArrayView &message, serialization::IDeserializer &submsg_dser, ProcessorState &processor_state) noexcept |
| Validate a RTPS message using a header extension submessage. More... | |
Protected Attributes | |
| IProcessData * | data_processor_ |
| Pointer to data processor. More... | |
| IProcessDataFrag * | datafrag_processor_ |
| Pointer to datafrag processor. More... | |
| IProcessHeartbeat * | heartbeat_processor_ |
| Pointer to heartbeat processor. More... | |
| IProcessAckNack * | acknack_processor_ |
| Pointer to acknack processor. More... | |
| IProcessNackFrag * | nackfrag_processor_ |
| Pointer to nackfrag processor. More... | |
| IProcessGap * | gap_processor_ |
| Pointer to gap processor. More... | |
| IProcessUnknown * | unknown_processor_ |
| Pointer to unknown processor. More... | |
| ProcessorProperties | processor_properties_ |
| Configured processor properties. More... | |
Processor implementation.
|
noexcept |
Processor constructor.
| [in,out] | data_processor | pointer to data processor. Ownership is not taken. |
| [in,out] | datafrag_processor | pointer to datafrag processor. Ownership is not taken. |
| [in,out] | heartbeat_processor | pointer to heartbeat processor. Ownership is not taken. |
| [in,out] | acknack_processor | pointer to acknack processor. Ownership is not taken. |
| [in,out] | nackfrag_processor | pointer to nackfrag processor. Ownership is not taken. |
| [in,out] | gap_processor | pointer to gap processor. Ownership is not taken. |
| [in,out] | unknown_processor | pointer to unknown processor. Ownership is not taken. |
|
noexcept |
Overload of processor constructor with configured properties.
| [in,out] | data_processor | pointer to data processor. Ownership is not taken. |
| [in,out] | datafrag_processor | pointer to datafrag processor. Ownership is not taken. |
| [in,out] | heartbeat_processor | pointer to heartbeat processor. Ownership is not taken. |
| [in,out] | acknack_processor | pointer to acknack processor. Ownership is not taken. |
| [in,out] | nackfrag_processor | pointer to nackfrag processor. Ownership is not taken. |
| [in,out] | gap_processor | pointer to gap processor. Ownership is not taken. |
| [in,out] | unknown_processor | pointer to unknown processor. Ownership is not taken. |
| processor_properties | properties. |
|
explicitnoexcept |
Processor constructor with rtps::Reader.
| [in,out] | reader | reference to Reader. Ownership is not taken. |
|
explicitnoexcept |
Processor constructor with rtps::Writer.
| [in,out] | writer | reference to Writer. Ownership is not taken. |
|
virtualdefaultnoexcept |
Virtual destructor.
|
deletenoexcept |
Copy deleted.
|
deletenoexcept |
Movement deleted.
|
protectednoexcept |
Handle a deserialized submessage.
| subheader | Deserializer interface | |
| payload | Payload of the submessage | |
| message | Complete RTPS message view | |
| [in,out] | processor_state | Processor state |
|
deletenoexcept |
Copy operator deleted.
Movement operator deleted.
|
protectednoexcept |
Deserialize and process ACKNACK submessage.
| subheader | Already deserialized subheader |
| dser | Deserializer |
| processor_state | Processor state |
|
protectednoexcept |
Deserialize and process DATA submessage.
| subheader | Already deserialized subheader |
| dser | Deserializer |
| processor_state | Processor state |
|
protectednoexcept |
Deserialize and process DATAFRAG submessage.
| subheader | Already deserialized subheader |
| dser | Deserializer |
| processor_state | Processor state |
|
protectednoexcept |
Deserialize and process GAP submessage.
| subheader | Already deserialized subheader |
| dser | Deserializer |
| processor_state | Processor state |
|
staticprotectednoexcept |
Deserialize and process HEADER_HE submessage.
| subheader | Already deserialized subheader | |
| message | Complete RTPS message view | |
| submsg_dser | Deserializer with encapsulated RTPS submessage | |
| [in,out] | processor_state | Processor state to modify |
|
protectednoexcept |
Deserialize and process HEARTBEAT submessage.
| subheader | Already deserialized subheader |
| dser | Deserializer |
| processor_state | Processor state |
|
staticprotectednoexcept |
Deserialize and process INFO_DST submessage.
| subheader | Already deserialized subheader | |
| dser | Deserializer | |
| [in,out] | processor_state | Processor state to modify |
|
staticprotectednoexcept |
Deserialize and process INFO_SCR submessage.
| subheader | Already deserialized subheader | |
| dser | Deserializer | |
| [in,out] | processor_state | Processor state to modify |
|
staticprotectednoexcept |
Deserialize and process INFO_TS submessage.
| subheader | Already deserialized subheader | |
| dser | Deserializer | |
| [in,out] | processor_state | Processor state to modify |
|
overridevirtualnoexcept |
Process the wire protocol message.
| message | view list with the message buffer, size shall be adjusted to message payload |
Implements eprosima::safedds::protocol::IProcessor.
|
protectednoexcept |
Deserialize and process NACKFRAG submessage.
| subheader | Already deserialized subheader |
| dser | Deserializer |
| processor_state | Processor state |
|
protectednoexcept |
Process next submessage in deserializer.
| dser | Deserializer interface | |
| message | Complete RTPS message view | |
| [in,out] | processor_state | Processor state |
|
staticprotectednoexcept |
Deserialize and process SubmessageHeader.
| dser | Deserializer interface | |
| [in,out] | submessage_header | SubmessageHeader to fill |
|
protectednoexcept |
Deserialize and process unknown RTPS submessage
| submessage | Complete RTPS submessage view | |
| [in,out] | processor_state | Processor state to modify |
|
staticprotectednoexcept |
Checks current processor state.
| processor_state | Current processor state |
|
staticprotectednoexcept |
Validate a RTPS message using a header extension submessage.
| header_extension | Processed HeaderExtension sub message | |
| message | Complete RTPS message view | |
| submsg_dser | Submessage deserializer at start of header extension checksum | |
| [in,out] | processor_state | Current processor state to modify |
|
protected |
Pointer to acknack processor.
|
protected |
Pointer to data processor.
|
protected |
Pointer to datafrag processor.
|
protected |
Pointer to gap processor.
|
protected |
Pointer to heartbeat processor.
|
protected |
Pointer to nackfrag processor.
|
protected |
Configured processor properties.
|
protected |
Pointer to unknown processor.