8#include "Arp/Base/Core/Enum.hxx"
10namespace Arp {
namespace Base {
namespace Acf {
namespace Commons
15enum class SystemEvent :
uint32
58 FlagsMask = 0xFFFFFF00,
62 EventMask = ~FlagsMask,
66 SystemError = (1 << 8)
71ARP_EXPORT std::ostream& operator<<(std::ostream& os, SystemEvent value);
72ARP_EXPORT std::istream& operator>>(std::istream& is, SystemEvent& value);
74constexpr SystemEvent operator&(SystemEvent lhs, SystemEvent rhs)
76 using U = std::underlying_type<SystemEvent>::type;
77 return static_cast<SystemEvent
>(
static_cast<U
>(lhs) &
static_cast<U
>(rhs));
80constexpr SystemEvent operator|(SystemEvent lhs, SystemEvent rhs)
82 using U = std::underlying_type<SystemEvent>::type;
83 return static_cast<SystemEvent
>(
static_cast<U
>(lhs) |
static_cast<U
>(rhs));
86constexpr SystemEvent& operator&=(SystemEvent& lhs, SystemEvent rhs)
92constexpr SystemEvent& operator|=(SystemEvent& lhs, SystemEvent rhs)
98constexpr SystemEvent operator~(SystemEvent arg)
100 using U = std::underlying_type<SystemEvent>::type;
101 return static_cast<SystemEvent
>(~static_cast<U>(arg));
108template<>
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