opendnp3
3.1.0
Reference implementation of DNP3 (IEEE-1815)
|
DNP3 two-byte IIN field. More...
#include <opendnp3/app/IINField.h>
Public Member Functions | |
IINField () | |
IINField (IINBit bit) | |
IINField (uint8_t aLSB, uint8_t aMSB) | |
bool | Any () const |
void | Clear () |
void | ClearBit (IINBit bit) |
bool | HasRequestError () const |
bool | IsClear (IINBit bit) const |
bool | IsSet (IINBit bit) const |
IINField | operator& (const IINField &aIIN) const |
IINField & | operator&= (const IINField &aIIN) |
bool | operator== (const IINField &aRHS) const |
IINField | operator| (const IINField &aIIN) const |
IINField & | operator|= (const IINField &aIIN) |
IINField | operator~ () const |
void | SetBit (IINBit bit) |
void | SetBitToValue (IINBit bit, bool value) |
Static Public Member Functions | |
static IINField | Empty () |
Public Attributes | |
uint8_t | LSB |
uint8_t | MSB |
Private Types | |
enum | LSBMask : uint8_t { LSBMask::BROADCAST = 0x01, LSBMask::CLASS1_EVENTS = 0x02, LSBMask::CLASS2_EVENTS = 0x04, LSBMask::CLASS3_EVENTS = 0x08, LSBMask::NEED_TIME = 0x10, LSBMask::LOCAL_CONTROL = 0x20, LSBMask::DEVICE_TROUBLE = 0x40, LSBMask::DEVICE_RESTART = 0x80 } |
enum | MSBMask : uint8_t { MSBMask::FUNC_NOT_SUPPORTED = 0x01, MSBMask::OBJECT_UNKNOWN = 0x02, MSBMask::PARAM_ERROR = 0x04, MSBMask::EVENT_BUFFER_OVERFLOW = 0x08, MSBMask::ALREADY_EXECUTING = 0x10, MSBMask::CONFIG_CORRUPT = 0x20, MSBMask::RESERVED1 = 0x40, MSBMask::RESERVED2 = 0x80, MSBMask::REQUEST_ERROR_MASK = FUNC_NOT_SUPPORTED | OBJECT_UNKNOWN | PARAM_ERROR } |
Private Member Functions | |
void | Clear (LSBMask bit) |
void | Clear (MSBMask bit) |
bool | Get (LSBMask bit) const |
bool | Get (MSBMask bit) const |
void | Set (LSBMask bit) |
void | Set (MSBMask bit) |
Static Private Attributes | |
static const uint8_t | REQUEST_ERROR_MASK |
DNP3 two-byte IIN field.
Definition at line 50 of file IINField.h.
|
strongprivate |
Enumerator | |
---|---|
BROADCAST | |
CLASS1_EVENTS | |
CLASS2_EVENTS | |
CLASS3_EVENTS | |
NEED_TIME | |
LOCAL_CONTROL | |
DEVICE_TROUBLE | |
DEVICE_RESTART |
Definition at line 54 of file IINField.h.
|
strongprivate |
Enumerator | |
---|---|
FUNC_NOT_SUPPORTED | |
OBJECT_UNKNOWN | |
PARAM_ERROR | |
EVENT_BUFFER_OVERFLOW | |
ALREADY_EXECUTING | |
CONFIG_CORRUPT | |
RESERVED1 | |
RESERVED2 | |
REQUEST_ERROR_MASK |
Definition at line 66 of file IINField.h.
|
inline |
Definition at line 87 of file IINField.h.
References SetBit().
|
inline |
Definition at line 92 of file IINField.h.
|
inline |
Definition at line 94 of file IINField.h.
Referenced by Empty(), operator&(), operator|(), and operator~().
|
inline |
Definition at line 110 of file IINField.h.
|
inline |
Definition at line 115 of file IINField.h.
|
inlineprivate |
Definition at line 179 of file IINField.h.
References LSB.
|
inlineprivate |
Definition at line 183 of file IINField.h.
References MSB.
void opendnp3::IINField::ClearBit | ( | IINBit | bit | ) |
|
inlinestatic |
Definition at line 82 of file IINField.h.
References IINField().
Definition at line 165 of file IINField.h.
References MSB.
|
inline |
Definition at line 120 of file IINField.h.
References Get(), and REQUEST_ERROR_MASK.
Definition at line 98 of file IINField.h.
References IsSet().
Definition at line 137 of file IINField.h.
References IINField(), LSB, and MSB.
Definition at line 142 of file IINField.h.
Definition at line 125 of file IINField.h.
References IINField(), LSB, and MSB.
Definition at line 130 of file IINField.h.
|
inline |
Definition at line 149 of file IINField.h.
References IINField(), LSB, and MSB.
|
inlineprivate |
Definition at line 170 of file IINField.h.
References LSB.
|
inlineprivate |
Definition at line 174 of file IINField.h.
References MSB.
void opendnp3::IINField::SetBit | ( | IINBit | bit | ) |
Referenced by IINField().
uint8_t opendnp3::IINField::LSB |
Definition at line 154 of file IINField.h.
Referenced by Any(), Clear(), Get(), operator&(), operator&=(), operator|(), operator|=(), operator~(), and Set().
uint8_t opendnp3::IINField::MSB |
Definition at line 155 of file IINField.h.
Referenced by Any(), Clear(), Get(), operator&(), operator&=(), operator|(), operator|=(), operator~(), and Set().
|
staticprivate |
Definition at line 158 of file IINField.h.