PROFINET IO Controller Stack 1.0.0
Modern C++ implementation of a PROFINET IO Controller stack
Loading...
Searching...
No Matches
alarms.h File Reference

Declares PROFINET alarm, diagnosis, maintenance, and USI payload types and parsers. More...

#include <cstdint>
#include <stdexcept>
#include <string>
#include <utility>
#include <variant>
#include <vector>
#include "profinet/indices.h"
#include "profinet/protocol.h"
+ Include dependency graph for alarms.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  profinet::AlarmItem
 Generic/unknown alarm item. More...
 
struct  profinet::DiagnosisItem
 Diagnosis alarm item. More...
 
struct  profinet::MaintenanceItem
 Maintenance alarm item (USI 0x8100). More...
 
struct  profinet::UploadRetrievalItem
 Upload/Retrieval alarm item (USI 0x8200, 0x8201). More...
 
struct  profinet::IParameterItem
 iParameter alarm item (USI 0x8201). More...
 
struct  profinet::PEAlarmItem
 PROFIenergy alarm item (USI 0x8310). More...
 
struct  profinet::RSAlarmItem
 Reporting System alarm item (USI 0x8300-0x8302). More...
 
struct  profinet::PRALAlarmItem
 Pull Request Alarm item (USI 0x8320). More...
 
struct  profinet::AlarmNotification
 Complete parsed AlarmNotification PDU: header fields + parsed items. More...
 

Namespaces

namespace  profinet
 

Typedefs

using profinet::AlarmItemVariant = std::variant< AlarmItem, DiagnosisItem, MaintenanceItem, UploadRetrievalItem, PEAlarmItem, RSAlarmItem, PRALAlarmItem >
 A parsed alarm payload item; the held alternative is selected by USI.
 

Functions

Usi profinet::UsiOf (const AlarmItemVariant &item)
 Get the USI shared by every AlarmItemVariant alternative.
 
std::string profinet::UsiNameOf (const AlarmItemVariant &item)
 Get the human-readable USI name for any AlarmItemVariant alternative.
 
std::pair< AlarmItemVariant, std::size_t > profinet::ParseAlarmItem (const Bytes &data, std::size_t offset=0)
 Parse a single alarm item starting at an offset.
 
AlarmNotification profinet::ParseAlarmNotification (const Bytes &data)
 Parse a complete AlarmNotification PDU (BlockHeader + body + items).
 

Detailed Description

Declares PROFINET alarm, diagnosis, maintenance, and USI payload types and parsers.

Definition in file alarms.h.