8#include "Arp/Base/Core/Enum.hxx"
10namespace Arp {
namespace Base {
namespace Acf {
namespace Commons
15enum class SystemEvent :
uint32
72 FlagsMask = 0xFFFFFF00,
76 EventMask = ~FlagsMask,
80 SystemError = (1 << 8)
85ARP_EXPORT std::ostream& operator<<(std::ostream& os, SystemEvent value);
86ARP_EXPORT std::istream& operator>>(std::istream& is, SystemEvent& value);
88constexpr SystemEvent operator&(SystemEvent lhs, SystemEvent rhs)
90 using U = std::underlying_type<SystemEvent>::type;
91 return static_cast<SystemEvent
>(
static_cast<U
>(lhs) &
static_cast<U
>(rhs));
94constexpr SystemEvent operator|(SystemEvent lhs, SystemEvent rhs)
96 using U = std::underlying_type<SystemEvent>::type;
97 return static_cast<SystemEvent
>(
static_cast<U
>(lhs) |
static_cast<U
>(rhs));
100constexpr SystemEvent& operator&=(SystemEvent& lhs, SystemEvent rhs)
106constexpr SystemEvent& operator|=(SystemEvent& lhs, SystemEvent rhs)
112constexpr SystemEvent operator~(SystemEvent arg)
114 using U = std::underlying_type<SystemEvent>::type;
115 return static_cast<SystemEvent
>(~static_cast<U>(arg));
122template<>
struct fmt::formatter<
Arp::Base::Acf::Commons::SystemEvent> :
public fmt::ostream_formatter {};
std::uint32_t uint32
The Arp unsigned integer type of 4 byte size.
Definition: PrimitiveTypes.hpp:33
Root namespace for the PLCnext API