PcapPlusPlus  Next
pcpp::DoIpDiagnosticPowerModeRequest Class Reference

Represents a Diagnostic Power Mode Request message in the DoIP protocol. More...

#include <DoIpLayer.h>

Inheritance diagram for pcpp::DoIpDiagnosticPowerModeRequest:
pcpp::DoIpLayer pcpp::Layer pcpp::IDataContainer

Public Member Functions

 DoIpDiagnosticPowerModeRequest (uint8_t *data, size_t dataLen, Layer *prevLayer, Packet *packet)
 Constructs a DiagnosticPowerModeRequest from raw packet data. More...
 
 DoIpDiagnosticPowerModeRequest ()
 Default constructor to create an empty DiagnosticPowerModeRequest.
 
DoIpPayloadTypes getPayloadType () const override
 Returns the DoIP payload type.
 
- Public Member Functions inherited from pcpp::DoIpLayer
std::string getPayloadTypeAsStr () const
 
DoIpProtocolVersion getProtocolVersion () const
 
std::string getProtocolVersionAsStr () const
 
void setProtocolVersion (DoIpProtocolVersion version)
 
void setProtocolVersion (uint8_t rawVersion)
 
uint8_t getInvertProtocolVersion () const
 
void setInvertProtocolVersion (uint8_t iVersion)
 
uint32_t getPayloadLength () const
 
void setPayloadLength (uint32_t length)
 
void parseNextLayer () override
 parse UDS layer
 
size_t getHeaderLen () const override
 
std::string toString () const override
 
void computeCalculateFields () override
 Each layer can compute field values automatically using this method. This is an abstract method.
 
OsiModelLayer getOsiModelLayer () const override
 
- Public Member Functions inherited from pcpp::Layer
 ~Layer () override
 
LayergetNextLayer () const
 
LayergetPrevLayer () const
 
ProtocolType getProtocol () const
 
bool isMemberOfProtocolFamily (ProtocolTypeFamily protocolTypeFamily) const
 
uint8_t * getData () const
 
size_t getDataLen () const
 
uint8_t * getLayerPayload () const
 
size_t getLayerPayloadSize () const
 
bool isAllocatedToPacket () const
 
void copyData (uint8_t *toArr) const
 
uint8_t * getDataPtr (size_t offset=0) const override
 

Static Public Member Functions

static bool isDataLenValid (size_t dataLen)
 Checks if the Entity Status Request data length is valid. More...
 
- Static Public Member Functions inherited from pcpp::DoIpLayer
static DoIpLayerparseDoIpLayer (uint8_t *data, size_t dataLen, Layer *prevLayer, Packet *packet)
 
static bool isDoIpPort (uint16_t port)
 
static bool isDataValid (uint8_t *data, size_t dataLen)
 

Additional Inherited Members

- Protected Member Functions inherited from pcpp::Layer
template<typename T , typename... Args>
LayerconstructNextLayer (uint8_t *data, size_t dataLen, Packet *packet, Args &&... extraArgs)
 
template<typename T , typename TFallback , typename... Args>
LayertryConstructNextLayerWithFallback (uint8_t *data, size_t dataLen, Packet *packet, Args &&... extraArgs)
 
- Static Protected Member Functions inherited from pcpp::Layer
template<typename T >
static bool canReinterpretAs (const uint8_t *data, size_t dataLen)
 Check if the data is large enough to reinterpret as a type. More...
 

Detailed Description

Represents a Diagnostic Power Mode Request message in the DoIP protocol.

This message is sent to inquire about the current power mode status of the vehicle, which helps determine if diagnostic communication can be initiated or continued.

Constructor & Destructor Documentation

◆ DoIpDiagnosticPowerModeRequest()

pcpp::DoIpDiagnosticPowerModeRequest::DoIpDiagnosticPowerModeRequest ( uint8_t *  data,
size_t  dataLen,
Layer prevLayer,
Packet packet 
)
inline

Constructs a DiagnosticPowerModeRequest from raw packet data.

Parameters
[in]dataPointer to the raw payload data.
[in]dataLenLength of the data buffer.
[in]prevLayerPointer to the previous protocol layer.
[in]packetPointer to the parent packet.

Member Function Documentation

◆ isDataLenValid()

static bool pcpp::DoIpDiagnosticPowerModeRequest::isDataLenValid ( size_t  dataLen)
inlinestatic

Checks if the Entity Status Request data length is valid.

Parameters
[in]dataLenLength of the data buffer.
Returns
true if the data length is valid, false otherwise.