|
PROFINET IO Controller Stack 1.0.0
Modern C++ implementation of a PROFINET IO Controller stack
|
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. | |
Enumerations | |
| enum class | profinet::AlarmNotificationBitmask : std::uint16_t { profinet::None = 0x0000 , profinet::AlarmSequenceNumber = 0x07FF , profinet::ManufacturerSpecific = 0x1000 , profinet::SubmoduleDiagnosisState = 0x2000 , profinet::ArDiagnosisState = 0x4000 , profinet::ChannelDiagnosis = 0x0800 } |
| Represents bitwise flags and bitmasks for alarm notification headers. More... | |
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). | |
| constexpr AlarmNotificationBitmask | profinet::operator| (AlarmNotificationBitmask lhs, AlarmNotificationBitmask rhs) noexcept |
| Bitwise OR operator for combining two AlarmNotificationBitmask values. | |
| constexpr AlarmNotificationBitmask | profinet::operator& (AlarmNotificationBitmask lhs, AlarmNotificationBitmask rhs) noexcept |
| Bitwise AND operator for intersecting two AlarmNotificationBitmask values. | |
| constexpr std::uint16_t | profinet::operator& (std::uint16_t lhs, AlarmNotificationBitmask rhs) noexcept |
| Bitwise AND between a raw integer and an AlarmNotificationBitmask value. | |
| constexpr std::uint16_t | profinet::operator& (AlarmNotificationBitmask lhs, std::uint16_t rhs) noexcept |
| Bitwise AND between an AlarmNotificationBitmask value and a raw integer. | |
| constexpr std::uint16_t | profinet::operator| (std::uint16_t lhs, AlarmNotificationBitmask rhs) noexcept |
| Bitwise OR between a raw integer and an AlarmNotificationBitmask value. | |
| constexpr std::uint16_t | profinet::operator| (AlarmNotificationBitmask lhs, std::uint16_t rhs) noexcept |
| Bitwise OR between an AlarmNotificationBitmask value and a raw integer. | |
Declares PROFINET alarm, diagnosis, maintenance, and USI payload types and parsers.
Definition in file alarms.h.