PROFINET IO Controller Stack 1.0.0
Modern C++ implementation of a PROFINET IO Controller stack
Loading...
Searching...
No Matches
profinet::PNIOCRBlockRes Struct Reference

IOCRBlockRes: device's response confirming an IOCR (part of the CONNECT response). More...

#include <protocol.h>

+ Collaboration diagram for profinet::PNIOCRBlockRes:

Static Public Member Functions

static PNIOCRBlockRes Parse (const Bytes &data)
 Parse an IOCRBlockRes from raw bytes.
 

Public Attributes

std::array< std::uint8_t, blockHeaderLength > blockHeader {}
 Nested 6-byte block header.
 
std::uint16_t iocrType = 0
 IOCR type (Input/Output/MulticastProvider/MulticastConsumer).
 
std::uint16_t iocrReference = 0
 IOCR reference assigned by the controller.
 
std::uint16_t frameId = 0
 Frame ID assigned by the device for this IOCR.
 

Static Public Attributes

static constexpr std::uint16_t BLOCK_TYPE = 0x8102
 Block type identifier for IOCRBlockRes.
 
static constexpr std::size_t kSize = 12
 Size in bytes of this block.
 

Detailed Description

IOCRBlockRes: device's response confirming an IOCR (part of the CONNECT response).

Definition at line 1939 of file protocol.h.

Member Function Documentation

◆ Parse()

static PNIOCRBlockRes profinet::PNIOCRBlockRes::Parse ( const Bytes &  data)
inlinestatic

Parse an IOCRBlockRes from raw bytes.

Parameters
dataBytes starting at the BlockHeader field.
Returns
The parsed block.

Definition at line 1964 of file protocol.h.

References blockHeader, profinet::blockHeaderLength, profinet::wire::Reader::Fixed(), frameId, iocrReference, iocrType, kSize, and profinet::wire::Reader::U16().

Referenced by profinet::rpc::RPCCon::ParseIocrResponse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ BLOCK_TYPE

constexpr std::uint16_t profinet::PNIOCRBlockRes::BLOCK_TYPE = 0x8102
staticconstexpr

◆ blockHeader

std::array<std::uint8_t, blockHeaderLength> profinet::PNIOCRBlockRes::blockHeader {}

Nested 6-byte block header.

Definition at line 1947 of file protocol.h.

Referenced by Parse().

◆ frameId

std::uint16_t profinet::PNIOCRBlockRes::frameId = 0

Frame ID assigned by the device for this IOCR.

Definition at line 1956 of file protocol.h.

Referenced by Parse().

◆ iocrReference

std::uint16_t profinet::PNIOCRBlockRes::iocrReference = 0

IOCR reference assigned by the controller.

Definition at line 1953 of file protocol.h.

Referenced by Parse().

◆ iocrType

std::uint16_t profinet::PNIOCRBlockRes::iocrType = 0

IOCR type (Input/Output/MulticastProvider/MulticastConsumer).

Definition at line 1950 of file protocol.h.

Referenced by Parse().

◆ kSize

constexpr std::size_t profinet::PNIOCRBlockRes::kSize = 12
staticconstexpr

The documentation for this struct was generated from the following file: