SNode.C
Loading...
Searching...
No Matches
iot::mqtt::ControlPacketDeserializer Class Referenceabstract

#include <ControlPacketDeserializer.h>

Inheritance diagram for iot::mqtt::ControlPacketDeserializer:
Collaboration diagram for iot::mqtt::ControlPacketDeserializer:

Public Member Functions

 ControlPacketDeserializer ()=default
 ControlPacketDeserializer (uint32_t remainingLength, uint8_t flags, uint8_t mustFlags)
ControlPacketDeserializeroperator= (const ControlPacketDeserializer &)=default
virtual ~ControlPacketDeserializer ()
std::size_t deserialize (iot::mqtt::MqttContext *mqttContext)
uint32_t getRemainingLength () const
bool isComplete () const
bool isError () const
std::size_t getConsumed () const

Protected Attributes

bool complete = false
bool error = false
uint32_t remainingLength = 0
std::size_t consumed = 0

Private Member Functions

virtual std::size_t deserializeVP (iot::mqtt::MqttContext *mqttContext)=0

Detailed Description

Definition at line 58 of file ControlPacketDeserializer.h.

Constructor & Destructor Documentation

◆ ControlPacketDeserializer() [1/2]

iot::mqtt::ControlPacketDeserializer::ControlPacketDeserializer ( )
default

◆ ControlPacketDeserializer() [2/2]

iot::mqtt::ControlPacketDeserializer::ControlPacketDeserializer ( uint32_t remainingLength,
uint8_t flags,
uint8_t mustFlags )

◆ ~ControlPacketDeserializer()

iot::mqtt::ControlPacketDeserializer::~ControlPacketDeserializer ( )
virtual

Member Function Documentation

◆ deserialize()

std::size_t iot::mqtt::ControlPacketDeserializer::deserialize ( iot::mqtt::MqttContext * mqttContext)

Definition at line 58 of file ControlPacketDeserializer.cpp.

58 {
59 const std::size_t currentConsumed = deserializeVP(mqttContext);
60 consumed += currentConsumed;
61
62 error = (complete && consumed != this->getRemainingLength()) || (!complete && consumed >= this->getRemainingLength());
63
64 return currentConsumed;
65 }
virtual std::size_t deserializeVP(iot::mqtt::MqttContext *mqttContext)=0

References consumed, and deserializeVP().

Here is the call graph for this function:

◆ deserializeVP()

◆ getConsumed()

std::size_t iot::mqtt::ControlPacketDeserializer::getConsumed ( ) const

Definition at line 79 of file ControlPacketDeserializer.cpp.

79 {
80 return consumed;
81 }

References consumed.

Referenced by iot::mqtt::client::packets::Publish::deserializeVP(), iot::mqtt::client::packets::Suback::deserializeVP(), iot::mqtt::server::packets::Publish::deserializeVP(), iot::mqtt::server::packets::Subscribe::deserializeVP(), and iot::mqtt::server::packets::Unsubscribe::deserializeVP().

Here is the caller graph for this function:

◆ getRemainingLength()

uint32_t iot::mqtt::ControlPacketDeserializer::getRemainingLength ( ) const

Definition at line 67 of file ControlPacketDeserializer.cpp.

67 {
68 return remainingLength;
69 }

References remainingLength.

Referenced by iot::mqtt::client::packets::Publish::deserializeVP(), iot::mqtt::client::packets::Suback::deserializeVP(), iot::mqtt::server::packets::Publish::deserializeVP(), iot::mqtt::server::packets::Subscribe::deserializeVP(), and iot::mqtt::server::packets::Unsubscribe::deserializeVP().

Here is the caller graph for this function:

◆ isComplete()

bool iot::mqtt::ControlPacketDeserializer::isComplete ( ) const

Definition at line 71 of file ControlPacketDeserializer.cpp.

71 {
72 return complete;
73 }

References complete.

◆ isError()

bool iot::mqtt::ControlPacketDeserializer::isError ( ) const

Definition at line 75 of file ControlPacketDeserializer.cpp.

75 {
76 return error;
77 }

References error.

◆ operator=()

ControlPacketDeserializer & iot::mqtt::ControlPacketDeserializer::operator= ( const ControlPacketDeserializer & )
default

Member Data Documentation

◆ complete

◆ consumed

std::size_t iot::mqtt::ControlPacketDeserializer::consumed = 0
protected

Definition at line 87 of file ControlPacketDeserializer.h.

Referenced by deserialize(), and getConsumed().

◆ error

bool iot::mqtt::ControlPacketDeserializer::error = false
protected

◆ remainingLength

uint32_t iot::mqtt::ControlPacketDeserializer::remainingLength = 0
protected

Definition at line 85 of file ControlPacketDeserializer.h.

Referenced by ControlPacketDeserializer(), and getRemainingLength().


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