PLCnext API Documentation 25.0.2.69
MessageSecurityMode.hpp
1
2//
3// Copyright Phoenix Contact GmbH & Co. KG
4//
6#pragma once
8#include "Arp/Base/Core/Enum.hxx"
9
10// DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED
11
13{
14
26{
30 None = 0,
31
35 Signed = 1, // (1 << 0)
36
40 Encrypted = 2, // (1 << 1)
41};
42
44{
45 return static_cast<MessageSecurityMode>(static_cast<int32>(lhs) | static_cast<int32>(rhs));
46}
47
49{
50 return static_cast<MessageSecurityMode>(static_cast<int32>(lhs) & static_cast<int32>(rhs));
51}
52
53constexpr MessageSecurityMode& operator|=(MessageSecurityMode& lhs, MessageSecurityMode rhs)
54{
55 return (lhs = static_cast<MessageSecurityMode>(static_cast<int32>(lhs) | static_cast<int32>(rhs)));
56}
57
58constexpr MessageSecurityMode& operator&=(MessageSecurityMode& lhs, MessageSecurityMode rhs)
59{
60 return (lhs = static_cast<MessageSecurityMode>(static_cast<int32>(lhs) & static_cast<int32>(rhs)));
61}
62
63constexpr MessageSecurityMode operator~(MessageSecurityMode arg)
64{
65 return static_cast<MessageSecurityMode>(~static_cast<int32>(arg));
66}
67
69// global stream operators of enum MessageSecurityMode for logging and parsing
70ARP_EXPORT std::ostream& operator<<(std::ostream& os, MessageSecurityMode value);
71ARP_EXPORT std::istream& operator>>(std::istream& is, MessageSecurityMode& value);
72
73} // end of namespace Arp::System::Um::Services
74
76// template specialization of MessageSecurityMode formatter
77template<> struct fmt::formatter<Arp::System::Um::Services::MessageSecurityMode> : public fmt::ostream_formatter {};
std::int32_t int32
The Arp integer type of 4 byte size.
Definition: PrimitiveTypes.hpp:35
Namespace for services of the User Manager (UM)
MessageSecurityMode
Describes the security measures which are applied to messages transported via a channel.
Definition: MessageSecurityMode.hpp:26
@ Signed
With this flag set messages are guaranteed to be integer and authentic. They originate from the authe...
@ Encrypted
With this flag set messages were transferred secretly. Eavesdropping would not have made sense for an...
Root namespace for the PLCnext API