8#include "Arp/System/Core/Enum.hxx"
10namespace Arp {
namespace Plc {
namespace Commons {
namespace Domain
143ARP_CXX_SYMBOL_EXPORT std::ostream& operator<<(std::ostream& os,
PlcState value);
144ARP_CXX_SYMBOL_EXPORT std::istream& operator>>(std::istream& is,
PlcState& value);
150 using U = std::underlying_type<PlcState>::type;
151 return static_cast<PlcState>(
static_cast<U
>(lhs) &
static_cast<U
>(rhs));
156 using U = std::underlying_type<PlcState>::type;
157 return static_cast<PlcState>(
static_cast<U
>(lhs) |
static_cast<U
>(rhs));
174 using U = std::underlying_type<PlcState>::type;
175 return static_cast<PlcState>(~static_cast<U>(arg));
std::uint32_t uint32
The Arp unsigned integer type of 4 byte size.
Definition: PrimitiveTypes.hpp:36
PlcState
Definition: PlcState.hpp:14
@ RemainingMask
This mask defines all states which should not be cleared before any PLC operation....
@ Loading
The PLC is loading the Plc components.
@ SuspendedBySystemWatchdog
Deprecated since 2022.0! Please use <cref name="Blocked"> instead. This error bit is set,...
@ StateMask
Use this entry to de-mask the raw PLC state value.
@ StartingDelayed
The PLC is about to start, but due to component conditions the PLC start has to be delayed.
@ Halt
The PLC is halted for debug purpose.
@ Blocked
This error bit is set, if the PLC could not be loaded because it was prevented by a component.
@ SuspendedBySwitch
Deprecated since 2022.0! Please use <cref name="Suspended"> instead. This error bit is set,...
@ Forcing
The PLC is in force mode. One or more variables are forced by the GDS.
@ Stopping
The PLC is stopping the Plc components.
@ FlagsMask
Use this entry to de-mask the flags portion of this PLC state.
@ Resetting
The PLC is resetting the Plc components.
@ Changing
The PLC is changing a configuration, this implies, that the state Running is set.
@ Suspended
This error bit is set, if the PLC could not be started because it was prevented by a component.
@ DcgNotPossible
This error bit is set, if the PLC tries to perform a change operation, but it is not possible.
@ DcgRealTimeViolation
This error bit is set, if the PLC tries to perform a change operation, but it is not possible in real...
@ ClearMask
This mask defines all states which should be cleared before any PLC operation.
@ Starting
The PLC is starting the Plc components.
@ DcgFailed
This error bit is set, if the PLC tried to perform a change operation, but an error occurred.
@ Debugging
The PLC is in debug mode. One or more breakpoints are set.
@ FatalError
An unspecified fatal error or exception occurs, and the PLC is in state error.
Root namespace for the PLCnext API