PLCnext API Documentation 23.6.0.37
StandardAttribute.hpp
1
2//
3// Copyright PHOENIX CONTACT Electronics GmbH
4//
6#pragma once
8#include "Arp/System/Core/Enum.hxx"
9
10// DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED
11
12namespace Arp { namespace Plc { namespace Commons { namespace Meta
13{
14
18{
20 None = 0,
21
24 Hidden = 1, // (1 << 0)
25
27 Input = 2, // (1 << 1)
28
30 Output = 4, // (1 << 2)
31
33 ReadOnly = 8, // (1 << 3)
34
36 Retain = 16, // (1 << 4)
37
39 Opc = 32, // (1 << 5)
40
42 Ehmi = 64, // (1 << 6)
43
45 ProfiCloud = 128, // (1 << 7)
46
48 Archive = 256, // (1 << 8)
49
51 Invisible = 512, // (1 << 9)
52
54 Assignable = 1024, // (1 << 10)
55
57 Redundant = 2048, // (1 << 11)
58};
59
60constexpr StandardAttribute operator|(StandardAttribute lhs, StandardAttribute rhs)
61{
62 return static_cast<StandardAttribute>(static_cast<uint64>(lhs) | static_cast<uint64>(rhs));
63}
64
65constexpr StandardAttribute operator&(StandardAttribute lhs, StandardAttribute rhs)
66{
67 return static_cast<StandardAttribute>(static_cast<uint64>(lhs) & static_cast<uint64>(rhs));
68}
69
70inline StandardAttribute& operator|=(StandardAttribute& lhs, StandardAttribute rhs)
71{
72 return (lhs = static_cast<StandardAttribute>(static_cast<uint64>(lhs) | static_cast<uint64>(rhs)));
73}
74
75inline StandardAttribute& operator&=(StandardAttribute& lhs, StandardAttribute rhs)
76{
77 return (lhs = static_cast<StandardAttribute>(static_cast<uint64>(lhs) & static_cast<uint64>(rhs)));
78}
79
80constexpr StandardAttribute operator~(StandardAttribute arg)
81{
82 return static_cast<StandardAttribute>(~static_cast<uint64>(arg));
83}
84
86// global stream operators of enum StandardAttribute for logging and parsing
87ARP_CXX_SYMBOL_EXPORT std::ostream& operator<<(std::ostream& os, StandardAttribute value);
88ARP_CXX_SYMBOL_EXPORT std::istream& operator>>(std::istream& is, StandardAttribute& value);
89
90}}}} // end of namespace Arp::Plc::Commons::Meta
std::uint64_t uint64
The Arp unsigned integer type of 8 byte size.
Definition: PrimitiveTypes.hpp:40
StandardAttribute
Standard attributes to types
Definition: StandardAttribute.hpp:18
@ Redundant
The node is visible for Redundancy.
@ ProfiCloud
The node is visible for ProfiCloud.
@ Output
The node is an output port.
@ Input
The node is an input port.
@ Assignable
Applicative attribute for PLCnext, to reinitialize pointer variables.
@ Hidden
The node is hidden, that is, it has just a technical purpose but no logical meaning and does not occu...
@ Invisible
Applicative attribute for PLCnext, to modify variables in the data list or similar.
@ Retain
The node shall be retained.
@ Opc
The node is visible for OPC.
@ Ehmi
The node is visible for eHmi.
@ Archive
The node is set to archive.
Root namespace for the PLCnext API