dnp3 (C++ API) 1.6.0
Loading...
Searching...
No Matches
dnp3 Namespace Reference

main namespace for the dnp3 library More...

Namespaces

namespace  attribute_variations
 Device attribute variation constants.
 
namespace  flag
 Individual flag constants that may be combined using bitwise-OR operator.
 
namespace  functional
 helpers functions to create interface implementations using lambdas
 

Classes

class  AcceptHandler
 Class used to accept a connection, reject it, or defer it to link identification. More...
 
class  AddressFilter
 Filters connecting client by their IP address to associate a connecting master with an outstation on the server. More...
 
struct  AnalogInput
 analog_input point More...
 
struct  AnalogInputConfig
 Analog configuration. More...
 
class  AnalogInputIterator
 Iterator over AnalogInput instances. More...
 
struct  AnalogOutputCommandEvent
 Event transferred from master to outstation when the outstation receives a corresponding command. More...
 
class  AnalogOutputCommandEventIterator
 Iterator over AnalogOutputCommandEvent instances. More...
 
struct  AnalogOutputStatus
 analog_output_status point More...
 
struct  AnalogOutputStatusConfig
 Analog Output Status configuration. More...
 
class  AnalogOutputStatusIterator
 Iterator over AnalogOutputStatus instances. More...
 
struct  ApplicationIin
 Application-controlled IIN bits. More...
 
struct  AssociationConfig
 Association configuration. More...
 
class  AssociationHandler
 Callbacks for a particular outstation association. More...
 
struct  AssociationId
 Association identifier. More...
 
class  AssociationInformation
 Informational callbacks about the current state of an outstation association. More...
 
struct  AttrItem
 An attribute variation and properties pair returned in Group0Var255. More...
 
class  AttrItemIter
 Iterator over AttrItem instances. More...
 
struct  AttrProp
 Attribute properties returned in Group0Var255. More...
 
struct  BinaryInput
 binary_input point More...
 
struct  BinaryInputConfig
 Binary Input configuration. More...
 
class  BinaryInputIterator
 Iterator over BinaryInput instances. More...
 
struct  BinaryOutputCommandEvent
 Event transferred from master to outstation when the outstation receives a corresponding command. More...
 
class  BinaryOutputCommandEventIterator
 Iterator over BinaryOutputCommandEvent instances. More...
 
struct  BinaryOutputStatus
 binary_output_status point More...
 
struct  BinaryOutputStatusConfig
 Binary Output Status configuration. More...
 
class  BinaryOutputStatusIterator
 Iterator over BinaryOutputStatus instances. More...
 
struct  BufferState
 Information about the state of buffer after a CONFIRM has been processed. More...
 
class  ByteIterator
 Iterator over uint8_t instances. More...
 
struct  ClassCount
 Remaining number of events in the buffer after a confirm on a per-class basis. More...
 
struct  Classes
 Class 0, 1, 2 and 3 config. More...
 
struct  ClassZeroConfig
 Controls which types are reported during a Class 0 read. More...
 
class  ClientStateListener
 Callback for monitoring the client TCP connection state. More...
 
class  CommandException
 Exception type corresponding to the underlying error enum CommandError. More...
 
class  CommandSet
 Builder type used to construct command requests. More...
 
class  CommandTaskCallback
 Handler for command tasks. More...
 
class  ConnectionHandler
 Callbacks to user code that determine how the server processes connections. More...
 
class  ConnectionStateListener
 Callback interface for connection state events. More...
 
class  ConnectOptions
 Options that control how TCP connections are established. More...
 
struct  ConnectStrategy
 Timing parameters for connection attempts. More...
 
struct  ControlCode
 CROB (Group12Var1) control code. More...
 
struct  ControlField
 APDU Control field. More...
 
class  ControlHandler
 Callbacks for handling controls. More...
 
struct  Counter
 counter point More...
 
struct  CounterConfig
 Counter configuration. More...
 
class  CounterIterator
 Iterator over Counter instances. More...
 
class  Database
 Internal database access. More...
 
class  DatabaseHandle
 Handle typed used to perform transactions on the database inside of control and freeze callbacks. More...
 
class  DatabaseTransaction
 Database transaction interface. More...
 
struct  DecodeLevel
 Controls the decoding of transmitted and received data at the application, transport, link, and physical layers. More...
 
struct  DirReadConfig
 Configuration related to reading a file. More...
 
struct  DoubleBitBinaryInput
 double_bit_binary_input point More...
 
struct  DoubleBitBinaryInputConfig
 Double-Bit Binary Input configuration. More...
 
class  DoubleBitBinaryInputIterator
 Iterator over DoubleBitBinaryInput instances. More...
 
class  EmptyResponseCallback
 Callback interface for any task that expects an empty response. More...
 
class  EmptyResponseException
 Exception type corresponding to the underlying error enum EmptyResponseError. More...
 
class  EndpointList
 List of IP endpoints. More...
 
struct  EventBufferConfig
 Maximum number of events for each type. More...
 
struct  EventClasses
 Event classes. More...
 
class  FileAuthCallback
 Callback interface used when obtaining an authentication key. More...
 
class  FileException
 Exception type corresponding to the underlying error enum FileError. More...
 
struct  FileInfo
 Information about a file or directory returned from the outstation. More...
 
class  FileInfoCallback
 Callback interface for retrieving file info asynchronously. More...
 
class  FileInfoIterator
 Iterator over FileInfo instances. More...
 
class  FileOpenCallback
 Callback interface used when opening a file. More...
 
class  FileOperationCallback
 Callback interface used when closing a file or writing a block of file data. More...
 
struct  FileReadConfig
 Configuration related to reading a file. More...
 
class  FileReader
 Callbacks for reading a file from the outstation asynchronously. More...
 
struct  Flags
 Collection of individual flag bits represented by an underlying mask value. More...
 
struct  FrozenAnalogInput
 frozen_analog_input point More...
 
class  FrozenAnalogInputIterator
 Iterator over FrozenAnalogInput instances. More...
 
struct  FrozenCounter
 frozen_counter point More...
 
struct  FrozenCounterConfig
 Frozen Counter configuration. More...
 
class  FrozenCounterIterator
 Iterator over FrozenCounter instances. More...
 
struct  Group12Var1
 Control Relay Output Block. More...
 
struct  HeaderInfo
 Information about the object header and specific variation. More...
 
class  IdentifiedLinkHandler
 Class used to accept a connection, reject it, or defer it to link identification. More...
 
struct  Iin
 Pair of IIN bytes. More...
 
struct  Iin1
 First IIN byte. More...
 
struct  Iin2
 Second IIN byte. More...
 
struct  LinkIdConfig
 Configuration that controls how the server performs remote link identification. More...
 
class  LinkStatusCallback
 Handler for link status check. More...
 
class  LinkStatusException
 Exception type corresponding to the underlying error enum LinkStatusError. More...
 
class  Logger
 Logging interface that receives the log messages and writes them somewhere. More...
 
class  Logging
 Provides a static method for configuring logging. More...
 
struct  LoggingConfig
 Logging configuration options. More...
 
class  MasterChannel
 Represents a communication channel for a master station. More...
 
struct  MasterChannelConfig
 Configuration for a MasterChannel that is independent of the physical layer. More...
 
class  MasterServer
 Class with methods used to spawn servers. More...
 
struct  OctetString
 Octet String point. More...
 
class  OctetStringIterator
 Iterator over OctetString instances. More...
 
struct  OpenFile
 The result of opening a file on the outstation. More...
 
class  Outstation
 Outstation handle. More...
 
class  OutstationApplication
 Dynamic information required by the outstation from the user application. More...
 
struct  OutstationConfig
 Outstation configuration. More...
 
struct  OutstationFeatures
 Optional outstation features that can be enabled or disabled. More...
 
class  OutstationInformation
 Informational callbacks that the outstation doesn't rely on to function. More...
 
class  OutstationServer
 TCP server that listens for connections and routes the messages to outstations. More...
 
struct  OutstationUdpConfig
 UDP outstation configuration. More...
 
class  ParamException
 Exception type corresponding to the underlying error enum ParamError. More...
 
struct  Permissions
 Permissions for world, group, and owner. More...
 
struct  PermissionSet
 Defines read, write, execute permissions for particular group or user. More...
 
struct  PollId
 Poll identifier. More...
 
class  PortStateListener
 Callback interface for receiving updates about the state of a serial port. More...
 
class  ReadDirectoryCallback
 Callback interface for retrieving a directory list. More...
 
class  ReadException
 Exception type corresponding to the underlying error enum ReadError. More...
 
class  ReadHandler
 Callback interface used to received measurement values received from the outstation. More...
 
class  ReadTaskCallback
 Handler for read tasks. More...
 
class  Request
 Custom request. More...
 
struct  RequestHeader
 Application-layer header for requests. More...
 
struct  ResponseHeader
 Response header information. More...
 
struct  RestartDelay
 Restart delay used by OutstationApplication::cold_restart() and OutstationApplication::warm_restart() More...
 
class  RestartException
 Exception type corresponding to the underlying error enum RestartError. More...
 
class  RestartTaskCallback
 Handler for restart tasks. More...
 
struct  RetryStrategy
 Retry strategy configuration. More...
 
class  Runtime
 Handle to the underlying runtime. More...
 
struct  RuntimeConfig
 Runtime configuration. More...
 
struct  SerialSettings
 Serial port settings. More...
 
class  TcpSettings
 Global TCP/TLS configuration settings. More...
 
struct  Timestamp
 Timestamp associated with particular measurement from the outstation. The validity of the value depends on the quality. More...
 
class  TimeSyncException
 Exception type corresponding to the underlying error enum TimeSyncError. More...
 
class  TimeSyncTaskCallback
 Handler for time synchronization tasks. More...
 
struct  TlsClientConfig
 TLS client configuration. More...
 
struct  TlsServerConfig
 TLS server configuration. More...
 
struct  TypeCount
 Remaining number of events in the buffer after a confirm on a per-type basis. More...
 
struct  UnsignedInteger
 Unsigned byte corresponding to group 102 variation 1. More...
 
class  UnsignedIntegerIterator
 Iterator over UnsignedInteger instances. More...
 
struct  UpdateInfo
 Defines what occurred during an update operation. Only certain id fields are valid depending on the value of the enumeration. More...
 
struct  UpdateOptions
 Options that control how the update is performed. More...
 
struct  UtcTimestamp
 Timestamp value returned by AssociationHandler::get_current_time(). More...
 
class  WriteDeadBandRequest
 Define a custom request to WRITE analog input dead-bands. More...
 

Enumerations

enum class  ParamError {
  ok = 0 , invalid_timeout = 1 , null_parameter = 2 , string_not_utf8 = 3 ,
  no_support = 4 , association_does_not_exist = 5 , association_duplicate_address = 6 , invalid_socket_address = 7 ,
  invalid_dnp3_address = 8 , invalid_buffer_size = 9 , address_filter_conflict = 10 , server_already_started = 11 ,
  server_bind_error = 12 , master_already_shutdown = 13 , runtime_creation_failure = 14 , runtime_destroyed = 15 ,
  runtime_cannot_block_within_async = 16 , logging_already_configured = 17 , point_does_not_exist = 18 , invalid_peer_certificate = 19 ,
  invalid_local_certificate = 20 , invalid_private_key = 21 , invalid_dns_name = 22 , other_tls_error = 23 ,
  wrong_channel_type = 24 , consumed = 25
}
 Error type used throughout the library. More...
 
enum class  CommandStatus {
  success = 0 , timeout = 1 , no_select = 2 , format_error = 3 ,
  not_supported = 4 , already_active = 5 , hardware_error = 6 , local = 7 ,
  too_many_ops = 8 , not_authorized = 9 , automation_inhibit = 10 , processing_limited = 11 ,
  out_of_range = 12 , downstream_local = 13 , already_complete = 14 , blocked = 15 ,
  canceled = 16 , blocked_other_master = 17 , downstream_fail = 18 , non_participating = 19 ,
  unknown = 20
}
 Enumeration received from an outstation in response to command request. More...
 
enum class  AppDecodeLevel { nothing = 0 , header = 1 , object_headers = 2 , object_values = 3 }
 Controls how transmitted and received application-layer fragments are decoded at the INFO log level. More...
 
enum class  TransportDecodeLevel { nothing = 0 , header = 1 , payload = 2 }
 Controls how transmitted and received transport segments are decoded at the INFO log level. More...
 
enum class  LinkDecodeLevel { nothing = 0 , header = 1 , payload = 2 }
 Controls how transmitted and received link frames are decoded at the INFO log level. More...
 
enum class  PhysDecodeLevel { nothing = 0 , length = 1 , data = 2 }
 Controls how data transmitted at the physical layer (TCP, serial, etc) is logged. More...
 
enum class  TripCloseCode { nul = 0 , close = 1 , trip = 2 , reserved = 3 }
 Trip-Close Code field, used in conjunction with OpType to specify a control operation. More...
 
enum class  OpType {
  nul = 0 , pulse_on = 1 , pulse_off = 2 , latch_on = 3 ,
  latch_off = 4
}
 Operation Type field, used in conjunction with TripCloseCode to specify a control operation. More...
 
enum class  TimeQuality { synchronized_time = 0 , unsynchronized_time = 1 , invalid_time = 2 }
 Timestamp quality. More...
 
enum class  DoubleBit { intermediate = 0 , determined_off = 1 , determined_on = 2 , indeterminate = 3 }
 Double-bit binary input value. More...
 
enum class  AnalogCommandType { i16 = 0 , i32 = 1 , f32 = 2 , f64 = 3 }
 Describes the encoding of the commanded value. More...
 
enum class  MinTlsVersion { v12 = 0 , v13 = 1 }
 Minimum TLS version to allow. More...
 
enum class  CertificateMode { authority_based = 0 , self_signed = 1 }
 Determines how the certificate(s) presented by the peer are validated. More...
 
enum class  VariationListAttr { unknown = 0 , list_of_variations = 1 }
 Enumeration of all the variation list attributes. More...
 
enum class  StringAttr {
  unknown = 0 , config_id = 1 , config_version = 2 , config_digest_algorithm = 3 ,
  master_resource_id = 4 , user_assigned_secondary_operator_name = 5 , user_assigned_primary_operator_name = 6 , user_assigned_system_name = 7 ,
  user_specific_attributes = 8 , device_manufacturer_software_version = 9 , device_manufacturer_hardware_version = 10 , user_assigned_owner_name = 11 ,
  user_assigned_location = 12 , user_assigned_id = 13 , user_assigned_device_name = 14 , device_serial_number = 15 ,
  device_subset_and_conformance = 16 , product_name_and_model = 17 , device_manufacturers_name = 18
}
 Enumeration of all the default string attributes. More...
 
enum class  UintAttr {
  unknown = 0 , secure_auth_version = 1 , num_security_stats_per_assoc = 2 , num_master_defined_data_set_proto = 3 ,
  num_outstation_defined_data_set_proto = 4 , num_master_defined_data_sets = 5 , num_outstation_defined_data_sets = 6 , max_binary_output_per_request = 7 ,
  local_timing_accuracy = 8 , duration_of_time_accuracy = 9 , max_analog_output_index = 10 , num_analog_outputs = 11 ,
  max_binary_output_index = 12 , num_binary_outputs = 13 , max_counter_index = 14 , num_counter = 15 ,
  max_analog_input_index = 16 , num_analog_input = 17 , max_double_bit_binary_input_index = 18 , num_double_bit_binary_input = 19 ,
  max_binary_input_index = 20 , num_binary_input = 21 , max_tx_fragment_size = 22 , max_rx_fragment_size = 23
}
 Enumeration of all the default uint attributes. More...
 
enum class  IntAttr { unknown = 0 }
 Enumeration of all the default integer attributes. More...
 
enum class  BoolAttr {
  unknown = 0 , supports_analog_output_events = 1 , supports_binary_output_events = 2 , supports_frozen_counter_events = 3 ,
  supports_frozen_counters = 4 , supports_counter_events = 5 , supports_frozen_analog_inputs = 6 , supports_analog_input_events = 7 ,
  supports_double_bit_binary_input_events = 8 , supports_binary_input_events = 9
}
 Enumeration of all the known boolean attributes. More...
 
enum class  TimeAttr { unknown = 0 , config_build_date = 1 , config_last_change_date = 2 }
 Enumeration of all the known DNP3 Time attributes. More...
 
enum class  OctetStringAttr { unknown = 0 , config_digest = 1 }
 Enumeration of all known octet-string attributes. More...
 
enum class  BitStringAttr { unknown = 0 }
 Enumeration of all known bit-string attributes. More...
 
enum class  FloatAttr { unknown = 0 , device_location_altitude = 1 , device_location_longitude = 2 , device_location_latitude = 3 }
 Enumeration of all known float attributes. More...
 
enum class  Nothing { nothing = 0 }
 A single value enum which is used as a placeholder for futures that don't return a value. More...
 
enum class  PortState { disabled = 0 , wait = 1 , open = 2 , shutdown = 3 }
 State of the serial port. More...
 
enum class  ClientState {
  disabled = 0 , connecting = 1 , connected = 2 , wait_after_failed_connect = 3 ,
  wait_after_disconnect = 4 , shutdown = 5
}
 State of the client connection. More...
 
enum class  Variation {
  group0 = 0 , group0_var254 = 1 , group1_var0 = 2 , group1_var1 = 3 ,
  group1_var2 = 4 , group2_var0 = 5 , group2_var1 = 6 , group2_var2 = 7 ,
  group2_var3 = 8 , group3_var0 = 9 , group3_var1 = 10 , group3_var2 = 11 ,
  group4_var0 = 12 , group4_var1 = 13 , group4_var2 = 14 , group4_var3 = 15 ,
  group10_var0 = 16 , group10_var1 = 17 , group10_var2 = 18 , group11_var0 = 19 ,
  group11_var1 = 20 , group11_var2 = 21 , group12_var1 = 22 , group13_var1 = 23 ,
  group13_var2 = 24 , group20_var0 = 25 , group20_var1 = 26 , group20_var2 = 27 ,
  group20_var5 = 28 , group20_var6 = 29 , group21_var0 = 30 , group21_var1 = 31 ,
  group21_var2 = 32 , group21_var5 = 33 , group21_var6 = 34 , group21_var9 = 35 ,
  group21_var10 = 36 , group22_var0 = 37 , group22_var1 = 38 , group22_var2 = 39 ,
  group22_var5 = 40 , group22_var6 = 41 , group23_var0 = 42 , group23_var1 = 43 ,
  group23_var2 = 44 , group23_var5 = 45 , group23_var6 = 46 , group30_var0 = 47 ,
  group30_var1 = 48 , group30_var2 = 49 , group30_var3 = 50 , group30_var4 = 51 ,
  group30_var5 = 52 , group30_var6 = 53 , group31_var0 = 54 , group31_var1 = 55 ,
  group31_var2 = 56 , group31_var3 = 57 , group31_var4 = 58 , group31_var5 = 59 ,
  group31_var6 = 60 , group31_var7 = 61 , group31_var8 = 62 , group32_var0 = 63 ,
  group32_var1 = 64 , group32_var2 = 65 , group32_var3 = 66 , group32_var4 = 67 ,
  group32_var5 = 68 , group32_var6 = 69 , group32_var7 = 70 , group32_var8 = 71 ,
  group33_var0 = 72 , group33_var1 = 73 , group33_var2 = 74 , group33_var3 = 75 ,
  group33_var4 = 76 , group33_var5 = 77 , group33_var6 = 78 , group33_var7 = 79 ,
  group33_var8 = 80 , group34_var0 = 81 , group34_var1 = 82 , group34_var2 = 83 ,
  group34_var3 = 84 , group40_var0 = 85 , group40_var1 = 86 , group40_var2 = 87 ,
  group40_var3 = 88 , group40_var4 = 89 , group41_var1 = 90 , group41_var2 = 91 ,
  group41_var3 = 92 , group41_var4 = 93 , group42_var0 = 94 , group42_var1 = 95 ,
  group42_var2 = 96 , group42_var3 = 97 , group42_var4 = 98 , group42_var5 = 99 ,
  group42_var6 = 100 , group42_var7 = 101 , group42_var8 = 102 , group43_var1 = 103 ,
  group43_var2 = 104 , group43_var3 = 105 , group43_var4 = 106 , group43_var5 = 107 ,
  group43_var6 = 108 , group43_var7 = 109 , group43_var8 = 110 , group50_var1 = 111 ,
  group50_var2 = 112 , group50_var3 = 113 , group50_var4 = 114 , group51_var1 = 115 ,
  group51_var2 = 116 , group52_var1 = 117 , group52_var2 = 118 , group60_var1 = 119 ,
  group60_var2 = 120 , group60_var3 = 121 , group60_var4 = 122 , group70_var2 = 123 ,
  group70_var3 = 124 , group70_var4 = 125 , group70_var5 = 126 , group70_var6 = 127 ,
  group70_var7 = 128 , group70_var8 = 129 , group80_var1 = 130 , group102_var0 = 131 ,
  group102_var1 = 132 , group110 = 133 , group111 = 134
}
 Group/Variation. More...
 
enum class  DataBits { five = 0 , six = 1 , seven = 2 , eight = 3 }
 Number of bits per character. More...
 
enum class  FlowControl { none = 0 , software = 1 , hardware = 2 }
 Flow control modes. More...
 
enum class  Parity { none = 0 , odd = 1 , even = 2 }
 Parity checking modes. More...
 
enum class  StopBits { one = 0 , two = 1 }
 Number of stop bits. More...
 
enum class  LinkErrorMode { discard = 0 , close = 1 }
 Controls how errors in parsed link-layer frames are handled. This behavior is configurable for physical layers with built-in error correction like TCP as the connection might be through a terminal server. More...
 
enum class  FunctionCode {
  confirm = 0 , read = 1 , write = 2 , select = 3 ,
  operate = 4 , direct_operate = 5 , direct_operate_no_response = 6 , immediate_freeze = 7 ,
  immediate_freeze_no_response = 8 , freeze_clear = 9 , freeze_clear_no_response = 10 , freeze_at_time = 11 ,
  freeze_at_time_no_response = 12 , cold_restart = 13 , warm_restart = 14 , initialize_data = 15 ,
  initialize_application = 16 , start_application = 17 , stop_application = 18 , save_configuration = 19 ,
  enable_unsolicited = 20 , disable_unsolicited = 21 , assign_class = 22 , delay_measure = 23 ,
  record_current_time = 24 , open_file = 25 , close_file = 26 , delete_file = 27 ,
  get_file_info = 28 , authenticate_file = 29 , abort_file = 30 , response = 31 ,
  unsolicited_response = 32
}
 Application layer function code. More...
 
enum class  FileType { directory = 0 , simple = 1 , other = 2 }
 File type enumeration used in Group 70 objects. More...
 
enum class  FileError {
  ok = 0 , bad_status = 1 , no_permission = 2 , bad_block_num = 3 ,
  abort_by_user = 4 , max_length_exceeded = 5 , wrong_handle = 6 , too_many_requests = 7 ,
  iin_error = 8 , bad_response = 9 , response_timeout = 10 , write_error = 11 ,
  no_connection = 12 , shutdown = 13 , association_removed = 14 , bad_encoding = 15
}
 Errors that can occur during file transfer. More...
 
enum class  FileMode { read = 0 , write = 1 , append = 2 }
 Different modes in which files may be opened. More...
 
enum class  UdpSocketMode { one_to_one = 0 , one_to_many = 1 }
 Describes how the UDP socket reads and writes datagrams from remote endpoint(s) More...
 
enum class  LinkReadMode { stream = 0 , datagram = 1 }
 Controls how the link-layer parser treats frames that span multiple calls to read of the physical layer. More...
 
enum class  LogLevel {
  error = 0 , warn = 1 , info = 2 , debug = 3 ,
  trace = 4
}
 Log level. More...
 
enum class  LogOutputFormat { text = 0 , json = 1 }
 Describes how each log event is formatted. More...
 
enum class  TimeFormat { none = 0 , rfc_3339 = 1 , system = 2 }
 Describes if and how the time will be formatted in log messages. More...
 
enum class  ResponseFunction { response = 0 , unsolicited_response = 1 }
 Type of response. More...
 
enum class  QualifierCode {
  range8 = 0 , range16 = 1 , all_objects = 2 , count8 = 3 ,
  count16 = 4 , count_and_prefix_8 = 5 , count_and_prefix_16 = 6 , free_format_16 = 7
}
 Qualifier code used in the response. More...
 
enum class  ReadType { startup_integrity = 0 , unsolicited = 1 , single_poll = 2 , periodic_poll = 3 }
 Describes the source of a read event. More...
 
enum class  EmptyResponseError {
  ok = 0 , rejected_by_iin2 = 1 , too_many_requests = 2 , iin_error = 3 ,
  bad_response = 4 , response_timeout = 5 , write_error = 6 , no_connection = 7 ,
  shutdown = 8 , association_removed = 9 , bad_encoding = 10
}
 Errors that may occur when performing a request that expects a response with zero object headers. More...
 
enum class  AutoTimeSync { none = 0 , lan = 1 , non_lan = 2 }
 Automatic time synchronization configuration. More...
 
enum class  TaskType {
  user_read = 0 , periodic_poll = 1 , startup_integrity = 2 , auto_event_scan = 3 ,
  command = 4 , clear_restart_bit = 5 , enable_unsolicited = 6 , disable_unsolicited = 7 ,
  time_sync = 8 , restart = 9 , write_dead_bands = 10 , generic_empty_response = 11 ,
  file_read = 12 , get_file_info = 13 , file_auth = 14 , file_open = 15 ,
  file_write_block = 16 , file_close = 17
}
 Task type used in AssociationInformation. More...
 
enum class  TaskError {
  too_many_requests = 0 , iin_error = 1 , bad_response = 2 , response_timeout = 3 ,
  write_error = 4 , no_connection = 5 , shutdown = 6 , association_removed = 7 ,
  bad_encoding = 8
}
 Task error used in AssociationInformation. More...
 
enum class  ReadError {
  ok = 0 , too_many_requests = 1 , iin_error = 2 , bad_response = 3 ,
  response_timeout = 4 , write_error = 5 , no_connection = 6 , shutdown = 7 ,
  association_removed = 8 , bad_encoding = 9
}
 Errors that can occur during a read operation. More...
 
enum class  CommandMode { direct_operate = 0 , select_before_operate = 1 }
 Command operation mode. More...
 
enum class  CommandError {
  ok = 0 , bad_status = 1 , header_mismatch = 2 , too_many_requests = 3 ,
  iin_error = 4 , bad_response = 5 , response_timeout = 6 , write_error = 7 ,
  no_connection = 8 , shutdown = 9 , association_removed = 10 , bad_encoding = 11
}
 Result of a command. More...
 
enum class  TimeSyncMode { lan = 0 , non_lan = 1 }
 Time synchronization mode. More...
 
enum class  TimeSyncError {
  ok = 0 , clock_rollback = 1 , system_time_not_unix = 2 , bad_outstation_time_delay = 3 ,
  overflow = 4 , still_needs_time = 5 , system_time_not_available = 6 , too_many_requests = 7 ,
  iin_error = 8 , bad_response = 9 , response_timeout = 10 , write_error = 11 ,
  no_connection = 12 , shutdown = 13 , association_removed = 14 , bad_encoding = 15
}
 Possible errors that can occur during a time synchronization procedure. More...
 
enum class  RestartError {
  ok = 0 , too_many_requests = 1 , iin_error = 2 , bad_response = 3 ,
  response_timeout = 4 , write_error = 5 , no_connection = 6 , shutdown = 7 ,
  association_removed = 8 , bad_encoding = 9
}
 Errors that can occur during a cold/warm restart operation. More...
 
enum class  LinkStatusError {
  ok = 0 , unexpected_response = 1 , too_many_requests = 2 , iin_error = 3 ,
  bad_response = 4 , response_timeout = 5 , write_error = 6 , no_connection = 7 ,
  shutdown = 8 , association_removed = 9 , bad_encoding = 10
}
 Errors that can occur during a manually initiated link status check. See MasterChannel::check_link_status() More...
 
enum class  EventClass { none = 0 , class1 = 1 , class2 = 2 , class3 = 3 }
 Event class. More...
 
enum class  UpdateResult { no_point = 0 , no_event = 1 , created = 2 , overflow = 3 }
 Defines what occurred during an update operation and which fields of UpdateInfo are valid. More...
 
enum class  EventMode { detect = 0 , force = 1 , suppress = 2 }
 Controls how events are processed when updating values in the database. More...
 
enum class  UpdateFlagsType {
  binary_input = 0 , double_bit_binary_input = 1 , binary_output_status = 2 , counter = 3 ,
  frozen_counter = 4 , analog_input = 5 , analog_output_status = 6
}
 Point type on which to update the flags. More...
 
enum class  StaticBinaryInputVariation { group1_var1 = 0 , group1_var2 = 1 }
 Static binary input variation. More...
 
enum class  EventBinaryInputVariation { group2_var1 = 0 , group2_var2 = 1 , group2_var3 = 2 }
 Event binary input variation. More...
 
enum class  StaticDoubleBitBinaryInputVariation { group3_var1 = 0 , group3_var2 = 1 }
 Static double-bit binary input variation. More...
 
enum class  EventDoubleBitBinaryInputVariation { group4_var1 = 0 , group4_var2 = 1 , group4_var3 = 2 }
 Event double-bit binary input variation. More...
 
enum class  StaticBinaryOutputStatusVariation { group10_var1 = 0 , group10_var2 = 1 }
 Static binary output status variation. More...
 
enum class  EventBinaryOutputStatusVariation { group11_var1 = 0 , group11_var2 = 1 }
 Event binary output status variation. More...
 
enum class  StaticCounterVariation { group20_var1 = 0 , group20_var2 = 1 , group20_var5 = 2 , group20_var6 = 3 }
 Static counter variation. More...
 
enum class  EventCounterVariation { group22_var1 = 0 , group22_var2 = 1 , group22_var5 = 2 , group22_var6 = 3 }
 Event counter variation. More...
 
enum class  StaticFrozenCounterVariation {
  group21_var1 = 0 , group21_var2 = 1 , group21_var5 = 2 , group21_var6 = 3 ,
  group21_var9 = 4 , group21_var10 = 5
}
 Static frozen counter variation. More...
 
enum class  EventFrozenCounterVariation { group23_var1 = 0 , group23_var2 = 1 , group23_var5 = 2 , group23_var6 = 3 }
 Event frozen counter variation. More...
 
enum class  StaticAnalogInputVariation {
  group30_var1 = 0 , group30_var2 = 1 , group30_var3 = 2 , group30_var4 = 3 ,
  group30_var5 = 4 , group30_var6 = 5
}
 Static analog variation. More...
 
enum class  EventAnalogInputVariation {
  group32_var1 = 0 , group32_var2 = 1 , group32_var3 = 2 , group32_var4 = 3 ,
  group32_var5 = 4 , group32_var6 = 5 , group32_var7 = 6 , group32_var8 = 7
}
 Event analog variation. More...
 
enum class  StaticAnalogOutputStatusVariation { group40_var1 = 0 , group40_var2 = 1 , group40_var3 = 2 , group40_var4 = 3 }
 Static analog output status variation. More...
 
enum class  EventAnalogOutputStatusVariation {
  group42_var1 = 0 , group42_var2 = 1 , group42_var3 = 2 , group42_var4 = 3 ,
  group42_var5 = 4 , group42_var6 = 5 , group42_var7 = 6 , group42_var8 = 7
}
 Event analog output status variation. More...
 
enum class  AttrDefError {
  ok = 0 , already_defined = 1 , reserved_variation = 2 , bad_type = 3 ,
  not_writable = 4
}
 Errors that can occur when defining attributes. More...
 
enum class  RestartDelayType { not_supported = 0 , seconds = 1 , milli_seconds = 2 }
 Type of restart delay value. Used by RestartDelay. More...
 
enum class  WriteTimeResult { ok = 0 , parameter_error = 1 , not_supported = 2 }
 Write time result used by OutstationApplication::write_absolute_time() More...
 
enum class  FreezeType { immediate_freeze = 0 , freeze_and_clear = 1 }
 Freeze operation type. More...
 
enum class  FreezeResult { ok = 0 , parameter_error = 1 , not_supported = 2 }
 Result of a freeze operation. More...
 
enum class  BroadcastAction { processed = 0 , ignored_by_configuration = 1 , bad_object_headers = 2 , unsupported_function = 3 }
 Enumeration describing how the outstation processed a broadcast request. More...
 
enum class  OperateType { select_before_operate = 0 , direct_operate = 1 , direct_operate_no_ack = 2 }
 Enumeration describing how the master requested the control operation. More...
 
enum class  ConnectionState { connected = 0 , disconnected = 1 }
 Outstation connection state for connection-oriented transports, e.g. TCP. More...
 

Functions

const char * to_string (ParamError value)
 convert an instance of enum ParamError into a C-style string More...
 
const char * to_string (CommandStatus value)
 convert an instance of enum CommandStatus into a C-style string More...
 
const char * to_string (AppDecodeLevel value)
 convert an instance of enum AppDecodeLevel into a C-style string More...
 
const char * to_string (TransportDecodeLevel value)
 convert an instance of enum TransportDecodeLevel into a C-style string More...
 
const char * to_string (LinkDecodeLevel value)
 convert an instance of enum LinkDecodeLevel into a C-style string More...
 
const char * to_string (PhysDecodeLevel value)
 convert an instance of enum PhysDecodeLevel into a C-style string More...
 
const char * to_string (TripCloseCode value)
 convert an instance of enum TripCloseCode into a C-style string More...
 
const char * to_string (OpType value)
 convert an instance of enum OpType into a C-style string More...
 
const char * to_string (TimeQuality value)
 convert an instance of enum TimeQuality into a C-style string More...
 
const char * to_string (DoubleBit value)
 convert an instance of enum DoubleBit into a C-style string More...
 
const char * to_string (AnalogCommandType value)
 convert an instance of enum AnalogCommandType into a C-style string More...
 
const char * to_string (MinTlsVersion value)
 convert an instance of enum MinTlsVersion into a C-style string More...
 
const char * to_string (CertificateMode value)
 convert an instance of enum CertificateMode into a C-style string More...
 
const char * to_string (VariationListAttr value)
 convert an instance of enum VariationListAttr into a C-style string More...
 
const char * to_string (StringAttr value)
 convert an instance of enum StringAttr into a C-style string More...
 
const char * to_string (UintAttr value)
 convert an instance of enum UintAttr into a C-style string More...
 
const char * to_string (IntAttr value)
 convert an instance of enum IntAttr into a C-style string More...
 
const char * to_string (BoolAttr value)
 convert an instance of enum BoolAttr into a C-style string More...
 
const char * to_string (TimeAttr value)
 convert an instance of enum TimeAttr into a C-style string More...
 
const char * to_string (OctetStringAttr value)
 convert an instance of enum OctetStringAttr into a C-style string More...
 
const char * to_string (BitStringAttr value)
 convert an instance of enum BitStringAttr into a C-style string More...
 
const char * to_string (FloatAttr value)
 convert an instance of enum FloatAttr into a C-style string More...
 
const char * to_string (Nothing value)
 convert an instance of enum Nothing into a C-style string More...
 
const char * to_string (PortState value)
 convert an instance of enum PortState into a C-style string More...
 
const char * to_string (ClientState value)
 convert an instance of enum ClientState into a C-style string More...
 
const char * to_string (Variation value)
 convert an instance of enum Variation into a C-style string More...
 
const char * to_string (DataBits value)
 convert an instance of enum DataBits into a C-style string More...
 
const char * to_string (FlowControl value)
 convert an instance of enum FlowControl into a C-style string More...
 
const char * to_string (Parity value)
 convert an instance of enum Parity into a C-style string More...
 
const char * to_string (StopBits value)
 convert an instance of enum StopBits into a C-style string More...
 
const char * to_string (LinkErrorMode value)
 convert an instance of enum LinkErrorMode into a C-style string More...
 
const char * to_string (FunctionCode value)
 convert an instance of enum FunctionCode into a C-style string More...
 
const char * to_string (FileType value)
 convert an instance of enum FileType into a C-style string More...
 
const char * to_string (FileError value)
 convert an instance of enum FileError into a C-style string More...
 
const char * to_string (FileMode value)
 convert an instance of enum FileMode into a C-style string More...
 
const char * to_string (UdpSocketMode value)
 convert an instance of enum UdpSocketMode into a C-style string More...
 
const char * to_string (LinkReadMode value)
 convert an instance of enum LinkReadMode into a C-style string More...
 
const char * to_string (LogLevel value)
 convert an instance of enum LogLevel into a C-style string More...
 
const char * to_string (LogOutputFormat value)
 convert an instance of enum LogOutputFormat into a C-style string More...
 
const char * to_string (TimeFormat value)
 convert an instance of enum TimeFormat into a C-style string More...
 
const char * to_string (ResponseFunction value)
 convert an instance of enum ResponseFunction into a C-style string More...
 
const char * to_string (QualifierCode value)
 convert an instance of enum QualifierCode into a C-style string More...
 
const char * to_string (ReadType value)
 convert an instance of enum ReadType into a C-style string More...
 
const char * to_string (EmptyResponseError value)
 convert an instance of enum EmptyResponseError into a C-style string More...
 
const char * to_string (AutoTimeSync value)
 convert an instance of enum AutoTimeSync into a C-style string More...
 
const char * to_string (TaskType value)
 convert an instance of enum TaskType into a C-style string More...
 
const char * to_string (TaskError value)
 convert an instance of enum TaskError into a C-style string More...
 
const char * to_string (ReadError value)
 convert an instance of enum ReadError into a C-style string More...
 
const char * to_string (CommandMode value)
 convert an instance of enum CommandMode into a C-style string More...
 
const char * to_string (CommandError value)
 convert an instance of enum CommandError into a C-style string More...
 
const char * to_string (TimeSyncMode value)
 convert an instance of enum TimeSyncMode into a C-style string More...
 
const char * to_string (TimeSyncError value)
 convert an instance of enum TimeSyncError into a C-style string More...
 
const char * to_string (RestartError value)
 convert an instance of enum RestartError into a C-style string More...
 
const char * to_string (LinkStatusError value)
 convert an instance of enum LinkStatusError into a C-style string More...
 
const char * to_string (EventClass value)
 convert an instance of enum EventClass into a C-style string More...
 
const char * to_string (UpdateResult value)
 convert an instance of enum UpdateResult into a C-style string More...
 
const char * to_string (EventMode value)
 convert an instance of enum EventMode into a C-style string More...
 
const char * to_string (UpdateFlagsType value)
 convert an instance of enum UpdateFlagsType into a C-style string More...
 
const char * to_string (StaticBinaryInputVariation value)
 convert an instance of enum StaticBinaryInputVariation into a C-style string More...
 
const char * to_string (EventBinaryInputVariation value)
 convert an instance of enum EventBinaryInputVariation into a C-style string More...
 
const char * to_string (StaticDoubleBitBinaryInputVariation value)
 convert an instance of enum StaticDoubleBitBinaryInputVariation into a C-style string More...
 
const char * to_string (EventDoubleBitBinaryInputVariation value)
 convert an instance of enum EventDoubleBitBinaryInputVariation into a C-style string More...
 
const char * to_string (StaticBinaryOutputStatusVariation value)
 convert an instance of enum StaticBinaryOutputStatusVariation into a C-style string More...
 
const char * to_string (EventBinaryOutputStatusVariation value)
 convert an instance of enum EventBinaryOutputStatusVariation into a C-style string More...
 
const char * to_string (StaticCounterVariation value)
 convert an instance of enum StaticCounterVariation into a C-style string More...
 
const char * to_string (EventCounterVariation value)
 convert an instance of enum EventCounterVariation into a C-style string More...
 
const char * to_string (StaticFrozenCounterVariation value)
 convert an instance of enum StaticFrozenCounterVariation into a C-style string More...
 
const char * to_string (EventFrozenCounterVariation value)
 convert an instance of enum EventFrozenCounterVariation into a C-style string More...
 
const char * to_string (StaticAnalogInputVariation value)
 convert an instance of enum StaticAnalogInputVariation into a C-style string More...
 
const char * to_string (EventAnalogInputVariation value)
 convert an instance of enum EventAnalogInputVariation into a C-style string More...
 
const char * to_string (StaticAnalogOutputStatusVariation value)
 convert an instance of enum StaticAnalogOutputStatusVariation into a C-style string More...
 
const char * to_string (EventAnalogOutputStatusVariation value)
 convert an instance of enum EventAnalogOutputStatusVariation into a C-style string More...
 
const char * to_string (AttrDefError value)
 convert an instance of enum AttrDefError into a C-style string More...
 
const char * to_string (RestartDelayType value)
 convert an instance of enum RestartDelayType into a C-style string More...
 
const char * to_string (WriteTimeResult value)
 convert an instance of enum WriteTimeResult into a C-style string More...
 
const char * to_string (FreezeType value)
 convert an instance of enum FreezeType into a C-style string More...
 
const char * to_string (FreezeResult value)
 convert an instance of enum FreezeResult into a C-style string More...
 
const char * to_string (BroadcastAction value)
 convert an instance of enum BroadcastAction into a C-style string More...
 
const char * to_string (OperateType value)
 convert an instance of enum OperateType into a C-style string More...
 
const char * to_string (ConnectionState value)
 convert an instance of enum ConnectionState into a C-style string More...
 

Variables

constexpr uint64_t dnp3_version_major = 1
 major version number More...
 
constexpr uint64_t dnp3_version_minor = 6
 minor version number More...
 
constexpr uint64_t dnp3_version_patch = 0
 patch version number More...
 
constexpr char const * dnp3_version_string = "1.6.0"
 version number as the string major.minor.patch More...
 

Detailed Description

main namespace for the dnp3 library

Enumeration Type Documentation

◆ AnalogCommandType

enum class dnp3::AnalogCommandType
strong

Describes the encoding of the commanded value.

Enumerator
i16 

16-bit integer

i32 

16-bit integer

f32 

single-precision floating point

f64 

double-precision floating point

◆ AppDecodeLevel

enum class dnp3::AppDecodeLevel
strong

Controls how transmitted and received application-layer fragments are decoded at the INFO log level.

Enumerator
nothing 

Decode nothing.

header 

Decode the header-only.

object_headers 

Decode the header and the object headers.

object_values 

Decode the header, the object headers, and the object values.

◆ AttrDefError

enum class dnp3::AttrDefError
strong

Errors that can occur when defining attributes.

Enumerator
ok 

attribute defined successfully

already_defined 

Attribute has already been defined.

reserved_variation 

Variation is reserved and cannot be defined.

bad_type 

The type does not match the required type in set 0.

not_writable 

This attribute cannot be configured as writable.

◆ AutoTimeSync

enum class dnp3::AutoTimeSync
strong

Automatic time synchronization configuration.

Enumerator
none 

Do not perform automatic time sync.

lan 

Perform automatic time sync with Record Current Time (0x18) function code.

non_lan 

Perform automatic time sync with Delay Measurement (0x17) function code.

◆ BitStringAttr

enum class dnp3::BitStringAttr
strong

Enumeration of all known bit-string attributes.

Enumerator
unknown 

The attribute variation is not defined or is not part of the default set.

◆ BoolAttr

enum class dnp3::BoolAttr
strong

Enumeration of all the known boolean attributes.

Boolean attributes are actually just encoded as signed integer attributes where 1 == true

Enumerator
unknown 

The attribute variation is not defined or is not part of the default set.

supports_analog_output_events 

Variation 219 - Supports analog output events.

supports_binary_output_events 

Variation 222 - Supports binary output events.

supports_frozen_counter_events 

Variation 225 - Supports frozen counter events.

supports_frozen_counters 

Variation 226 - Supports frozen counters.

supports_counter_events 

Variation 227 - Supports counter events.

supports_frozen_analog_inputs 

Variation 230 - Supports frozen analog input events.

supports_analog_input_events 

Variation 231 - Supports analog input events.

supports_double_bit_binary_input_events 

Variation 234 - Supports double-bit binary input events.

supports_binary_input_events 

Variation 237 - Support binary input events.

◆ BroadcastAction

enum class dnp3::BroadcastAction
strong

Enumeration describing how the outstation processed a broadcast request.

Enumerator
processed 

Outstation processed the broadcast.

ignored_by_configuration 

Outstation ignored the broadcast message b/c it is disabled by configuration.

bad_object_headers 

Outstation was unable to parse the object headers and ignored the request.

unsupported_function 

Outstation ignore the broadcast message b/c the function is not supported via Broadcast.

◆ CertificateMode

enum class dnp3::CertificateMode
strong

Determines how the certificate(s) presented by the peer are validated.

This validation always occurs after the handshake signature has been verified.

Enumerator
authority_based 

Validates the peer certificate against one or more configured trust anchors.

This mode uses the default certificate verifier in `rustls` to ensure that the chain of certificates presented by the peer is valid against one of the configured trust anchors.

The name verification is relaxed to allow for certificates that do not contain the SAN extension. In these cases the name is verified using the Common Name instead. 
self_signed 

Validates that the peer presents a single certificate which is a byte-for-byte match against the configured peer certificate.

The certificate is parsed only to ensure that the `NotBefore` and `NotAfter` are valid for the current system time. 

◆ ClientState

enum class dnp3::ClientState
strong

State of the client connection.

Use by the ClientStateListener.

Enumerator
disabled 

Client is disabled and idle until enabled.

connecting 

Client is trying to establish a connection to the remote device.

connected 

Client is connected to the remote device.

wait_after_failed_connect 

Failed to establish a connection, waiting before retrying.

wait_after_disconnect 

Client was disconnected, waiting before retrying.

shutdown 

Client is shutting down.

◆ CommandError

enum class dnp3::CommandError
strong

Result of a command.

Enumerator
ok 

Success, i.e. no error occurred.

bad_status 

Outstation indicated that a command was not SUCCESS.

header_mismatch 

Number of headers or objects in the response didn't match the number in the request.

too_many_requests 

too many user requests queued

iin_error 

outstation returned an IIN.2 error bit

bad_response 

response was malformed or contained object headers

response_timeout 

timeout occurred before receiving a response

write_error 

insufficient buffer space to serialize the request

no_connection 

no connection

shutdown 

master was shutdown

association_removed 

association was removed mid-task

bad_encoding 

request data could not be encoded

◆ CommandMode

enum class dnp3::CommandMode
strong

Command operation mode.

Enumerator
direct_operate 

Perform a Direct Operate (0x05)

select_before_operate 

Perform a Select and Operate (0x03 then 0x04)

◆ CommandStatus

enum class dnp3::CommandStatus
strong

Enumeration received from an outstation in response to command request.

Enumerator
success 

command was accepted, initiated, or queued (value == 0)

timeout 

command timed out before completing (value == 1)

no_select 

command requires being selected before operate, configuration issue (value == 2)

format_error 

bad control code or timing values (value == 3)

not_supported 

command is not implemented (value == 4)

already_active 

command is all ready in progress or its all ready in that mode (value == 5)

hardware_error 

something is stopping the command, often a local/remote interlock (value == 6)

local 

the function governed by the control is in local only control (value == 7)

too_many_ops 

the command has been done too often and has been throttled (value == 8)

not_authorized 

the command was rejected because the device denied it or an RTU intercepted it (value == 9)

automation_inhibit 

command not accepted because it was prevented or inhibited by a local automation process, such as interlocking logic or synchrocheck (value == 10)

processing_limited 

command not accepted because the device cannot process any more activities than are presently in progress (value == 11)

out_of_range 

command not accepted because the value is outside the acceptable range permitted for this point (value == 12)

downstream_local 

command not accepted because the outstation is forwarding the request to another downstream device which reported LOCAL (value == 13)

already_complete 

command not accepted because the outstation has already completed the requested operation (value == 14)

blocked 

command not accepted because the requested function is specifically blocked at the outstation (value == 15)

canceled 

command not accepted because the operation was cancelled (value == 16)

blocked_other_master 

command not accepted because another master is communicating with the outstation and has exclusive rights to operate this control point (value == 17)

downstream_fail 

command not accepted because the outstation is forwarding the request to another downstream device which cannot be reached or is otherwise incapable of performing the request (value == 18)

non_participating 

(deprecated) indicates the outstation shall not issue or perform the control operation (value == 126)

unknown 

captures any value not defined in the enumeration

◆ ConnectionState

enum class dnp3::ConnectionState
strong

Outstation connection state for connection-oriented transports, e.g. TCP.

Enumerator
connected 

Connected to the master.

disconnected 

Disconnected from the master.

◆ DataBits

enum class dnp3::DataBits
strong

Number of bits per character.

Enumerator
five 

5 bits per character

six 

6 bits per character

seven 

7 bits per character

eight 

8 bits per character

◆ DoubleBit

enum class dnp3::DoubleBit
strong

Double-bit binary input value.

Enumerator
intermediate 

Transition between conditions.

determined_off 

Determined to be OFF.

determined_on 

Determined to be ON.

indeterminate 

Abnormal or custom condition.

◆ EmptyResponseError

enum class dnp3::EmptyResponseError
strong

Errors that may occur when performing a request that expects a response with zero object headers.

Enumerator
ok 

Success, i.e. no error occurred.

rejected_by_iin2 

IIN2 indicates request was not completely successful.

too_many_requests 

too many user requests queued

iin_error 

outstation returned an IIN.2 error bit

bad_response 

response was malformed or contained object headers

response_timeout 

timeout occurred before receiving a response

write_error 

insufficient buffer space to serialize the request

no_connection 

no connection

shutdown 

master was shutdown

association_removed 

association was removed mid-task

bad_encoding 

request data could not be encoded

◆ EventAnalogInputVariation

Event analog variation.

Enumerator
group32_var1 

Analog input event - 32-bit without time.

group32_var2 

Analog input event - 16-bit without time.

group32_var3 

Analog input event - 32-bit with time.

group32_var4 

Analog input event - 16-bit with time.

group32_var5 

Analog input event - single-precision, floating-point without time.

group32_var6 

Analog input event - double-precision, floating-point without time.

group32_var7 

Analog input event - single-precision, floating-point with time.

group32_var8 

Analog input event - double-precision, floating-point with time.

◆ EventAnalogOutputStatusVariation

Event analog output status variation.

Enumerator
group42_var1 

Analog output event - 32-bit without time.

group42_var2 

Analog output event - 16-bit without time.

group42_var3 

Analog output event - 32-bit with time.

group42_var4 

Analog output event - 16-bit with time.

group42_var5 

Analog output event - single-precision, floating-point without time.

group42_var6 

Analog output event - double-precision, floating-point without time.

group42_var7 

Analog output event - single-precision, floating-point with time.

group42_var8 

Analog output event - double-precision, floating-point with time.

◆ EventBinaryInputVariation

Event binary input variation.

Enumerator
group2_var1 

Binary input event - without time.

group2_var2 

Binary input event - with absolute time.

group2_var3 

Binary input event - with relative time.

◆ EventBinaryOutputStatusVariation

Event binary output status variation.

Enumerator
group11_var1 

Binary output event - status without time.

group11_var2 

Binary output event - status with time.

◆ EventClass

enum class dnp3::EventClass
strong

Event class.

Enumerator
none 

Does not generate events.

class1 

Class 1 event.

class2 

Class 2 event.

class3 

Class 3 event.

◆ EventCounterVariation

enum class dnp3::EventCounterVariation
strong

Event counter variation.

Enumerator
group22_var1 

Counter event - 32-bit with flag.

group22_var2 

Counter event - 16-bit with flag.

group22_var5 

Counter event - 32-bit with flag and time.

group22_var6 

Counter event - 16-bit with flag and time.

◆ EventDoubleBitBinaryInputVariation

Event double-bit binary input variation.

Enumerator
group4_var1 

Double-bit binary input event - without time.

group4_var2 

Double-bit binary input event - with absolute time.

group4_var3 

Double-bit binary input event - with relative time.

◆ EventFrozenCounterVariation

Event frozen counter variation.

Enumerator
group23_var1 

Frozen Counter event - 32-bit with flag.

group23_var2 

Frozen Counter event - 16-bit with flag.

group23_var5 

Frozen Counter event - 32-bit with flag and time.

group23_var6 

Frozen Counter event - 16-bit with flag and time.

◆ EventMode

enum class dnp3::EventMode
strong

Controls how events are processed when updating values in the database.

Enumerator
detect 

Detect events in a type dependent fashion.

This is the default mode that should be used. 
force 

Produce an event whether the value has changed or not.

suppress 

Never produce an event regardless of change.

◆ FileError

enum class dnp3::FileError
strong

Errors that can occur during file transfer.

Enumerator
ok 

Success, i.e. no error occurred.

bad_status 

Outstation returned an error status code.

no_permission 

Outstation indicated no permission to access file.

bad_block_num 

Received an unexpected block number.

abort_by_user 

File transfer aborted by user.

max_length_exceeded 

Exceeded the maximum length specified by the user.

wrong_handle 

File handle returned by the outstation did not match the request.

too_many_requests 

too many user requests queued

iin_error 

outstation returned an IIN.2 error bit

bad_response 

response was malformed or contained object headers

response_timeout 

timeout occurred before receiving a response

write_error 

insufficient buffer space to serialize the request

no_connection 

no connection

shutdown 

master was shutdown

association_removed 

association was removed mid-task

bad_encoding 

request data could not be encoded

◆ FileMode

enum class dnp3::FileMode
strong

Different modes in which files may be opened.

Enumerator
read 

Specifies that an existing file is to be opened for reading.

write 

Specifies that the file is to be opened for writing, truncating any existing file to length 0.

append 

Specifies that the file is to be opened for writing, appending to the end of the file.

◆ FileType

enum class dnp3::FileType
strong

File type enumeration used in Group 70 objects.

Enumerator
directory 

File is a directory.

simple 

File is a simple file type suitable for sequential file transfer.

other 

Some other unspecified value.

◆ FloatAttr

enum class dnp3::FloatAttr
strong

Enumeration of all known float attributes.

Enumerator
unknown 

The attribute variation is not defined or is not part of the default set.

device_location_altitude 

Variation 203 - Altitude of the device.

device_location_longitude 

Variation 204 - Longitude of the device from reference meridian (-180.0 to 180.0 deg)

device_location_latitude 

Variation 205 - Latitude of the device from the equator (90.0 to -90.0 deg)

◆ FlowControl

enum class dnp3::FlowControl
strong

Flow control modes.

Enumerator
none 

No flow control.

software 

Flow control using XON/XOFF bytes.

hardware 

Flow control using RTS/CTS signals.

◆ FreezeResult

enum class dnp3::FreezeResult
strong

Result of a freeze operation.

Enumerator
ok 

Freeze operation was successful.

parameter_error 

The request parameters are nonsensical.

not_supported 

The demanded freeze operation is not supported by this device.

◆ FreezeType

enum class dnp3::FreezeType
strong

Freeze operation type.

Enumerator
immediate_freeze 

Copy the current value of a counter to the associated point.

freeze_and_clear 

Copy the current value of a counter to the associated point and clear the current value to 0.

◆ FunctionCode

enum class dnp3::FunctionCode
strong

Application layer function code.

Enumerator
confirm 

Master sends this to an outstation to confirm the receipt of an Application Layer fragment (value == 0)

read 

Outstation shall return the data specified by the objects in the request (value == 1)

write 

Outstation shall store the data specified by the objects in the request (value == 2)

select 

Outstation shall select (or arm) the output points specified by the objects in the request in preparation for a subsequent operate command (value == 3)

operate 

Outstation shall activate the output points selected (or armed) by a previous select function code command (value == 4)

direct_operate 

Outstation shall immediately actuate the output points specified by the objects in the request (value == 5)

direct_operate_no_response 

Same as DirectOperate but outstation shall not send a response (value == 6)

immediate_freeze 

Outstation shall copy the point data values specified by the objects in the request to a separate freeze buffer (value == 7)

immediate_freeze_no_response 

Same as ImmediateFreeze but outstation shall not send a response (value == 8)

freeze_clear 

Outstation shall copy the point data values specified by the objects in the request into a separate freeze buffer and then clear the values (value == 9)

freeze_clear_no_response 

Same as FreezeClear but outstation shall not send a response (value == 10)

freeze_at_time 

Outstation shall copy the point data values specified by the objects in the request to a separate freeze buffer at the time and/or time intervals specified in a special time data information object (value == 11)

freeze_at_time_no_response 

Same as FreezeAtTime but outstation shall not send a response (value == 12)

cold_restart 

Outstation shall perform a complete reset of all hardware and software in the device (value == 13)

warm_restart 

Outstation shall reset only portions of the device (value == 14)

initialize_data 

Obsolete-Do not use for new designs (value == 15)

initialize_application 

Outstation shall place the applications specified by the objects in the request into the ready to run state (value == 16)

start_application 

Outstation shall start running the applications specified by the objects in the request (value == 17)

stop_application 

Outstation shall stop running the applications specified by the objects in the request (value == 18)

save_configuration 

This code is deprecated-Do not use for new designs (value == 19)

enable_unsolicited 

Enables outstation to initiate unsolicited responses from points specified by the objects in the request (value == 20)

disable_unsolicited 

Prevents outstation from initiating unsolicited responses from points specified by the objects in the request (value == 21)

assign_class 

Outstation shall assign the events generated by the points specified by the objects in the request to one of the classes (value == 22)

delay_measure 

Outstation shall report the time it takes to process and initiate the transmission of its response (value == 23)

record_current_time 

Outstation shall save the time when the last octet of this message is received (value == 24)

open_file 

Outstation shall open a file (value == 25)

close_file 

Outstation shall close a file (value == 26)

delete_file 

Outstation shall delete a file (value == 27)

get_file_info 

Outstation shall retrieve information about a file (value == 28)

authenticate_file 

Outstation shall return a file authentication key (value == 29)

abort_file 

Outstation shall abort a file transfer operation (value == 30)

response 

Master shall interpret this fragment as an Application Layer response to an ApplicationLayer request (value == 129)

unsolicited_response 

Master shall interpret this fragment as an unsolicited response that was not prompted by an explicit request (value == 130)

◆ IntAttr

enum class dnp3::IntAttr
strong

Enumeration of all the default integer attributes.

In 1815-2012 all integer attributes are mapped to boolean values

Enumerator
unknown 

The attribute variation is not defined or is not part of the default set.

◆ LinkDecodeLevel

enum class dnp3::LinkDecodeLevel
strong

Controls how transmitted and received link frames are decoded at the INFO log level.

Enumerator
nothing 

Decode nothing.

header 

Decode the header.

payload 

Decode the header and the raw payload as hexadecimal.

◆ LinkErrorMode

enum class dnp3::LinkErrorMode
strong

Controls how errors in parsed link-layer frames are handled. This behavior is configurable for physical layers with built-in error correction like TCP as the connection might be through a terminal server.

Enumerator
discard 

Framing errors are discarded. The link-layer parser is reset on any error, and the parser begins scanning for 0x0564. This is always the behavior for serial ports.

close 

Framing errors are bubbled up to calling code, closing the session. Suitable for physical layers that provide error correction like TCP.

◆ LinkReadMode

enum class dnp3::LinkReadMode
strong

Controls how the link-layer parser treats frames that span multiple calls to read of the physical layer.

UDP is unique in that the specification requires that link layer frames be wholly contained within datagrams, but this can be relaxed by configuration.

Enumerator
stream 

Reading from a stream (TCP, serial, etc.) where link-layer frames MAY span separate calls to read.

datagram 

Reading datagrams (UDP) where link-layer frames MAY NOT span separate calls to read.

◆ LinkStatusError

enum class dnp3::LinkStatusError
strong

Errors that can occur during a manually initiated link status check. See MasterChannel::check_link_status()

Enumerator
ok 

Success, i.e. no error occurred.

unexpected_response 

There was activity on the link, but it wasn't a LINK_STATUS.

too_many_requests 

too many user requests queued

iin_error 

outstation returned an IIN.2 error bit

bad_response 

response was malformed or contained object headers

response_timeout 

timeout occurred before receiving a response

write_error 

insufficient buffer space to serialize the request

no_connection 

no connection

shutdown 

master was shutdown

association_removed 

association was removed mid-task

bad_encoding 

request data could not be encoded

◆ LogLevel

enum class dnp3::LogLevel
strong

Log level.

Used in Logger::on_message() callback to identify the log level of a message.

Enumerator
error 

Error log level.

warn 

Warning log level.

info 

Information log level.

debug 

Debugging log level.

trace 

Trace log level.

◆ LogOutputFormat

enum class dnp3::LogOutputFormat
strong

Describes how each log event is formatted.

Enumerator
text 

A simple text-based format.

json 

Output formatted as JSON.

◆ MinTlsVersion

enum class dnp3::MinTlsVersion
strong

Minimum TLS version to allow.

Enumerator
v12 

Allow TLS 1.2 and 1.3.

v13 

Only allow TLS 1.3.

◆ Nothing

enum class dnp3::Nothing
strong

A single value enum which is used as a placeholder for futures that don't return a value.

Enumerator
nothing 

The value type is meaningless.

◆ OctetStringAttr

enum class dnp3::OctetStringAttr
strong

Enumeration of all known octet-string attributes.

Enumerator
unknown 

The attribute variation is not defined or is not part of the default set.

config_digest 

Variation 200 - Digest (aka fingerprint) of the configuration using a CRC, HASH, MAC, or public key signature.

◆ OperateType

enum class dnp3::OperateType
strong

Enumeration describing how the master requested the control operation.

Enumerator
select_before_operate 

control point was properly selected before the operate request

direct_operate 

operate the control via a DirectOperate request

direct_operate_no_ack 

operate the control via a DirectOperateNoAck request

◆ OpType

enum class dnp3::OpType
strong

Operation Type field, used in conjunction with TripCloseCode to specify a control operation.

Enumerator
nul 

NUL (0)

pulse_on 

PULSE_ON (1)

pulse_off 

PULSE_OFF (2)

latch_on 

LATCH_ON (3)

latch_off 

LATCH_OFF(4)

◆ ParamError

enum class dnp3::ParamError
strong

Error type used throughout the library.

Enumerator
ok 

Success, i.e. no error occurred.

invalid_timeout 

The supplied timeout value is too small or too large.

null_parameter 

Null parameter.

string_not_utf8 

Provided string argument is not UTF-8.

no_support 

Native library was compiled without support for this feature.

association_does_not_exist 

The specified association does not exist.

association_duplicate_address 

Duplicate association address.

invalid_socket_address 

Invalid socket address.

invalid_dnp3_address 

Invalid link-layer DNP3 address.

invalid_buffer_size 

Invalid buffer size.

address_filter_conflict 

Conflict in the address filter specification.

server_already_started 

Server already started.

server_bind_error 

Server failed to bind to the specified port.

master_already_shutdown 

Master was already shutdown.

runtime_creation_failure 

Failed to create Tokio runtime.

runtime_destroyed 

Runtime has already been disposed.

runtime_cannot_block_within_async 

Runtime cannot execute blocking call within asynchronous context.

logging_already_configured 

Logging can only be configured once.

point_does_not_exist 

Point does not exist.

invalid_peer_certificate 

Invalid peer certificate file.

invalid_local_certificate 

Invalid local certificate file.

invalid_private_key 

Invalid private key file.

invalid_dns_name 

Invalid DNS name.

other_tls_error 

Other TLS error.

wrong_channel_type 

This operation cannot be performed on this channel type.

consumed 

This object is consumed and cannot be used again.

◆ Parity

enum class dnp3::Parity
strong

Parity checking modes.

Enumerator
none 

No parity bit.

odd 

Parity bit sets odd number of 1 bits.

even 

Parity bit sets even number of 1 bits.

◆ PhysDecodeLevel

enum class dnp3::PhysDecodeLevel
strong

Controls how data transmitted at the physical layer (TCP, serial, etc) is logged.

Enumerator
nothing 

Log nothing.

length 

Log only the length of data that is sent and received.

data 

Log the length and the actual data that is sent and received.

◆ PortState

enum class dnp3::PortState
strong

State of the serial port.

Enumerator
disabled 

Disabled until enabled.

wait 

Waiting to perform an open retry.

open 

Port is open.

shutdown 

Task has been shut down.

◆ QualifierCode

enum class dnp3::QualifierCode
strong

Qualifier code used in the response.

Enumerator
range8 

8-bit start stop (0x00)

range16 

16-bit start stop (0x01)

all_objects 

All objects (0x06)

count8 

8-bit count (0x07)

count16 

16-bit count (0x08)

count_and_prefix_8 

8-bit count and prefix (0x17)

count_and_prefix_16 

16-bit count and prefix (0x28)

free_format_16 

16-bit free format (0x5B)

◆ ReadError

enum class dnp3::ReadError
strong

Errors that can occur during a read operation.

Enumerator
ok 

Success, i.e. no error occurred.

too_many_requests 

too many user requests queued

iin_error 

outstation returned an IIN.2 error bit

bad_response 

response was malformed or contained object headers

response_timeout 

timeout occurred before receiving a response

write_error 

insufficient buffer space to serialize the request

no_connection 

no connection

shutdown 

master was shutdown

association_removed 

association was removed mid-task

bad_encoding 

request data could not be encoded

◆ ReadType

enum class dnp3::ReadType
strong

Describes the source of a read event.

Enumerator
startup_integrity 

Startup integrity poll.

unsolicited 

Unsolicited message.

single_poll 

Single poll requested by the user.

periodic_poll 

Periodic poll configured by the user.

◆ ResponseFunction

enum class dnp3::ResponseFunction
strong

Type of response.

Enumerator
response 

Solicited response.

unsolicited_response 

Unsolicited response.

◆ RestartDelayType

enum class dnp3::RestartDelayType
strong

Type of restart delay value. Used by RestartDelay.

Enumerator
not_supported 

Restart mode not supported.

seconds 

Value is in seconds (corresponds to g51v1)

milli_seconds 

Value is in milliseconds (corresponds to g51v2)

◆ RestartError

enum class dnp3::RestartError
strong

Errors that can occur during a cold/warm restart operation.

Enumerator
ok 

Success, i.e. no error occurred.

too_many_requests 

too many user requests queued

iin_error 

outstation returned an IIN.2 error bit

bad_response 

response was malformed or contained object headers

response_timeout 

timeout occurred before receiving a response

write_error 

insufficient buffer space to serialize the request

no_connection 

no connection

shutdown 

master was shutdown

association_removed 

association was removed mid-task

bad_encoding 

request data could not be encoded

◆ StaticAnalogInputVariation

Static analog variation.

Enumerator
group30_var1 

Analog input - 32-bit with flag.

group30_var2 

Analog input - 16-bit with flag.

group30_var3 

Analog input - 32-bit without flag.

group30_var4 

Analog input - 16-bit without flag.

group30_var5 

Analog input - single-precision, floating-point with flag.

group30_var6 

Analog input - double-precision, floating-point with flag.

◆ StaticAnalogOutputStatusVariation

Static analog output status variation.

Enumerator
group40_var1 

Analog output status - 32-bit with flag.

group40_var2 

Analog output status - 16-bit with flag.

group40_var3 

Analog output status - single-precision, floating-point with flag.

group40_var4 

Analog output status - double-precision, floating-point with flag.

◆ StaticBinaryInputVariation

Static binary input variation.

Enumerator
group1_var1 

Binary input - packed format.

group1_var2 

Binary input - with flags.

◆ StaticBinaryOutputStatusVariation

Static binary output status variation.

Enumerator
group10_var1 

Binary output - packed format.

group10_var2 

Binary output - output status with flags.

◆ StaticCounterVariation

enum class dnp3::StaticCounterVariation
strong

Static counter variation.

Enumerator
group20_var1 

Counter - 32-bit with flag.

group20_var2 

Counter - 16-bit with flag.

group20_var5 

Counter - 32-bit without flag.

group20_var6 

Counter - 16-bit without flag.

◆ StaticDoubleBitBinaryInputVariation

Static double-bit binary input variation.

Enumerator
group3_var1 

Double-bit binary input - packed format.

group3_var2 

Double-bit binary input - with flags.

◆ StaticFrozenCounterVariation

Static frozen counter variation.

Enumerator
group21_var1 

Frozen Counter - 32-bit with flag.

group21_var2 

Frozen Counter - 16-bit with flag.

group21_var5 

Frozen Counter - 32-bit with flag and time.

group21_var6 

Frozen Counter - 16-bit with flag and time.

group21_var9 

Frozen Counter - 32-bit without flag.

group21_var10 

Frozen Counter - 16-bit without flag.

◆ StopBits

enum class dnp3::StopBits
strong

Number of stop bits.

Enumerator
one 

One stop bit.

two 

Two stop bits.

◆ StringAttr

enum class dnp3::StringAttr
strong

Enumeration of all the default string attributes.

Enumerator
unknown 

The attribute variation is not defined or is not part of the default set.

config_id 

Variation 196 - Configuration id.

config_version 

Variation 197 - Configuration version.

config_digest_algorithm 

Variation 201 - Configuration digest algorithm.

master_resource_id 

Variation 202 - Master resource id (mRID)

user_assigned_secondary_operator_name 

Variation 206 - User-assigned secondary operator name.

user_assigned_primary_operator_name 

Variation 207 - User-assigned primary operator name.

user_assigned_system_name 

Variation 208 - User-assigned system name.

user_specific_attributes 

Variation 211 - Identification of user-specific attributes.

device_manufacturer_software_version 

Variation 242 - Device manufacturer software version.

device_manufacturer_hardware_version 

Variation 243 - Device manufacturer hardware version.

user_assigned_owner_name 

Variation 244 - User-assigned owner name.

user_assigned_location 

Variation 245 - User assigned location name.

user_assigned_id 

Variation 246 - User assigned ID code/number.

user_assigned_device_name 

Variation 247 - User assigned device name.

device_serial_number 

Variation 248 - Device serial number.

device_subset_and_conformance 

Variation 249 - DNP3 subset and conformance.

product_name_and_model 

Variation 250 - Device manufacturer's product name and model.

device_manufacturers_name 

Variation 252 - Device manufacturer's name.

◆ TaskError

enum class dnp3::TaskError
strong

Task error used in AssociationInformation.

Enumerator
too_many_requests 

too many user requests queued

iin_error 

outstation returned an IIN.2 error bit

bad_response 

response was malformed or contained object headers

response_timeout 

timeout occurred before receiving a response

write_error 

insufficient buffer space to serialize the request

no_connection 

no connection

shutdown 

master was shutdown

association_removed 

association was removed mid-task

bad_encoding 

request data could not be encoded

◆ TaskType

enum class dnp3::TaskType
strong

Task type used in AssociationInformation.

Enumerator
user_read 

User-defined read request.

periodic_poll 

Periodic poll task.

startup_integrity 

Startup integrity scan.

auto_event_scan 

Automatic event scan caused by RESTART IIN bit detection.

command 

Command request.

clear_restart_bit 

Clear RESTART IIN bit.

enable_unsolicited 

Enable unsolicited startup request.

disable_unsolicited 

Disable unsolicited startup request.

time_sync 

Time synchronisation task.

restart 

Cold or warm restart task.

write_dead_bands 

Write analog input dead-bands.

generic_empty_response 

Generic request that expects an empty response.

file_read 

Read a file from the outstation.

get_file_info 

Get information about a file.

file_auth 

Send username and password and get back an auth key from the outstation.

file_open 

Open a file on the outstation.

file_write_block 

Write a file block to the outstation.

file_close 

Close a file on the outstation.

◆ TimeAttr

enum class dnp3::TimeAttr
strong

Enumeration of all the known DNP3 Time attributes.

Enumerator
unknown 

The attribute variation is not defined or is not part of the default set.

config_build_date 

Variation 198 - Time and date that the outstation's current configuration was built defined.

config_last_change_date 

Variation 199 - Time and date that the outstation's configuration was last modified.

◆ TimeFormat

enum class dnp3::TimeFormat
strong

Describes if and how the time will be formatted in log messages.

Enumerator
none 

Don't format the timestamp as part of the message.

rfc_3339 

Format the time using RFC 3339.

system 

Format the time in a human readable format e.g. 'Jun 25 14:27:12.955'.

◆ TimeQuality

enum class dnp3::TimeQuality
strong

Timestamp quality.

Enumerator
synchronized_time 

The timestamp is UTC synchronized at the remote device.

unsynchronized_time 

The device indicates the timestamp may be not be synchronized.

invalid_time 

Timestamp is not valid, ignore the value and use a local timestamp.

◆ TimeSyncError

enum class dnp3::TimeSyncError
strong

Possible errors that can occur during a time synchronization procedure.

Enumerator
ok 

Success, i.e. no error occurred.

clock_rollback 

Detected a clock rollback.

system_time_not_unix 

The system time cannot be converted to a Unix timestamp.

bad_outstation_time_delay 

Outstation time delay exceeded the response delay.

overflow 

Overflow in calculation.

still_needs_time 

Outstation did not clear the NEED_TIME IIN bit.

system_time_not_available 

System time not available.

too_many_requests 

too many user requests queued

iin_error 

outstation returned an IIN.2 error bit

bad_response 

response was malformed or contained object headers

response_timeout 

timeout occurred before receiving a response

write_error 

insufficient buffer space to serialize the request

no_connection 

no connection

shutdown 

master was shutdown

association_removed 

association was removed mid-task

bad_encoding 

request data could not be encoded

◆ TimeSyncMode

enum class dnp3::TimeSyncMode
strong

Time synchronization mode.

Enumerator
lan 

Perform a LAN time sync with Record Current Time (0x18) function code.

non_lan 

Perform a non-LAN time sync with Delay Measurement (0x17) function code.

◆ TransportDecodeLevel

enum class dnp3::TransportDecodeLevel
strong

Controls how transmitted and received transport segments are decoded at the INFO log level.

Enumerator
nothing 

Decode nothing.

header 

Decode the header.

payload 

Decode the header and the raw payload as hexadecimal.

◆ TripCloseCode

enum class dnp3::TripCloseCode
strong

Trip-Close Code field, used in conjunction with OpType to specify a control operation.

Enumerator
nul 

NUL (0)

close 

CLOSE (1)

trip 

TRIP (2)

reserved 

RESERVED (3)

◆ UdpSocketMode

enum class dnp3::UdpSocketMode
strong

Describes how the UDP socket reads and writes datagrams from remote endpoint(s)

Enumerator
one_to_one 

The UDP endpoint will only communicate with the specified remote endpoint.

one_to_many 

The UDP endpoint will accept packets any remote endpoint.

When this mode is used with an outstation, the outstation will respond to the address from which the request was sent. It will use the supplied remote endpoint only for sending unsolicited responses. 

◆ UintAttr

enum class dnp3::UintAttr
strong

Enumeration of all the default uint attributes.

Enumerator
unknown 

The attribute variation is not defined or is not part of the default set.

secure_auth_version 

Variation 209 - Secure authentication version.

num_security_stats_per_assoc 

Variation 210 - Number of security statistics per association.

num_master_defined_data_set_proto 

Variation 212 - Number of master defined data-set prototypes.

num_outstation_defined_data_set_proto 

Variation 213 - Number of outstation defined data-set prototypes.

num_master_defined_data_sets 

Variation 214 - Number of master defined data-sets.

num_outstation_defined_data_sets 

Variation 215 - Number of outstation defined data-sets.

max_binary_output_per_request 

Variation 216 - Maximum number of binary outputs per request.

local_timing_accuracy 

Variation 217 - Local timing accuracy (microseconds)

duration_of_time_accuracy 

Variation 218 - Duration of time accuracy (seconds)

max_analog_output_index 

Variation 220 - Maximum analog output index.

num_analog_outputs 

Variation 221 - Number of analog outputs.

max_binary_output_index 

Variation 223 - Maximum binary output index.

num_binary_outputs 

Variation 224 - Number of binary outputs.

max_counter_index 

Variation 228 - Maximum counter point index.

num_counter 

Variation 229 - Number of counter points.

max_analog_input_index 

Variation 232 - Maximum analog input point index.

num_analog_input 

Variation 233 - Number of analog input points.

max_double_bit_binary_input_index 

Variation 235 - Maximum double-bit binary input point index.

num_double_bit_binary_input 

Variation 236 - Number of double-bit binary input points.

max_binary_input_index 

Variation 238 - Maximum binary input point index.

num_binary_input 

Variation 239 - Number of binary input points.

max_tx_fragment_size 

Variation 240 - Maximum transmit fragment size.

max_rx_fragment_size 

Variation 241 - Maximum receive fragment size.

◆ UpdateFlagsType

enum class dnp3::UpdateFlagsType
strong

Point type on which to update the flags.

Enumerator
binary_input 

Binary input.

double_bit_binary_input 

Doubl-bit binary input.

binary_output_status 

Binary output status.

counter 

Counter.

frozen_counter 

Frozen counter.

analog_input 

Analog input.

analog_output_status 

Analog output status.

◆ UpdateResult

enum class dnp3::UpdateResult
strong

Defines what occurred during an update operation and which fields of UpdateInfo are valid.

Enumerator
no_point 

No point exists for this type and index.

no_event 

The point exists, but the update did not create an event.

created 

An event was created with the specified id.

overflow 

An event was created with the specified, but inserting it caused an event to be discarded.

◆ Variation

enum class dnp3::Variation
strong

Group/Variation.

Enumerator
group0 

Device Attributes - Variations 0 to 253 and 255.

group0_var254 

Device Attributes - Non-Specific All Attributes Request.

group1_var0 

Binary Input - Default variation.

group1_var1 

Binary Input - Packed format.

group1_var2 

Binary Input - With flags.

group2_var0 

Binary Input Event - Default variation.

group2_var1 

Binary Input Event - Without time.

group2_var2 

Binary Input Event - With absolute time.

group2_var3 

Binary Input Event - With relative time.

group3_var0 

Double-bit Binary Input - Default variation.

group3_var1 

Double-bit Binary Input - Packed format.

group3_var2 

Double-bit Binary Input - With flags.

group4_var0 

Double-bit Binary Input Event - Default variation.

group4_var1 

Double-bit Binary Input Event - Without time.

group4_var2 

Double-bit Binary Input Event - With absolute time.

group4_var3 

Double-bit Binary Input Event - With relative time.

group10_var0 

Binary Output - Default variation.

group10_var1 

Binary Output - Packed format.

group10_var2 

Binary Output - With flags.

group11_var0 

Binary Output Event - Default variation.

group11_var1 

Binary Output Event - Without time.

group11_var2 

Binary Output Event - With time.

group12_var1 

Binary Output Command - Control Relay Output Block.

group13_var1 

Binary Output Command Event - command status without time.

group13_var2 

Binary Output Command Event - command status with time.

group20_var0 

Counter - Default variation.

group20_var1 

Counter - 32-bit with flags.

group20_var2 

Counter - 16-bit with flags.

group20_var5 

Counter - 32-bit without flag.

group20_var6 

Counter - 16-bit without flag.

group21_var0 

Frozen Counter - Default variation.

group21_var1 

Frozen Counter - 32-bit with flags.

group21_var2 

Frozen Counter - 16-bit with flags.

group21_var5 

Frozen Counter - 32-bit with flags and time.

group21_var6 

Frozen Counter - 16-bit with flags and time.

group21_var9 

Frozen Counter - 32-bit without flag.

group21_var10 

Frozen Counter - 16-bit without flag.

group22_var0 

Counter Event - Default variation.

group22_var1 

Counter Event - 32-bit with flags.

group22_var2 

Counter Event - 16-bit with flags.

group22_var5 

Counter Event - 32-bit with flags and time.

group22_var6 

Counter Event - 16-bit with flags and time.

group23_var0 

Frozen Counter Event - Default variation.

group23_var1 

Frozen Counter Event - 32-bit with flags.

group23_var2 

Frozen Counter Event - 16-bit with flags.

group23_var5 

Frozen Counter Event - 32-bit with flags and time.

group23_var6 

Frozen Counter Event - 16-bit with flags and time.

group30_var0 

Analog Input - Default variation.

group30_var1 

Analog Input - 32-bit with flags.

group30_var2 

Analog Input - 16-bit with flags.

group30_var3 

Analog Input - 32-bit without flag.

group30_var4 

Analog Input - 16-bit without flag.

group30_var5 

Analog Input - Single-precision floating point with flags.

group30_var6 

Analog Input - Double-precision floating point with flags.

group31_var0 

Frozen Analog Input - Default variation.

group31_var1 

Frozen Analog Input - 32-bit with flags.

group31_var2 

Frozen Analog Input - 16-bit with flags.

group31_var3 

Frozen Analog Input - 32-bit with flags and time-of-freeze.

group31_var4 

Frozen Analog Input - 16-bit with flags and time-of-freeze.

group31_var5 

Frozen Analog Input - 32-bit without flags.

group31_var6 

Frozen Analog Input - 16-bit without flags.

group31_var7 

Frozen Analog Input - Single-precision floating point with flags.

group31_var8 

Frozen Analog Input - Double-precision floating point with flags.

group32_var0 

Analog Input Event - Default variation.

group32_var1 

Analog Input Event - 32-bit without time.

group32_var2 

Analog Input Event - 16-bit without time.

group32_var3 

Analog Input Event - 32-bit with time.

group32_var4 

Analog Input Event - 16-bit with time.

group32_var5 

Analog Input Event - Single-precision floating point without time.

group32_var6 

Analog Input Event - Double-precision floating point without time.

group32_var7 

Analog Input Event - Single-precision floating point with time.

group32_var8 

Analog Input Event - Double-precision floating point with time.

group33_var0 

Frozen Analog Input Event - Default variation.

group33_var1 

Frozen Analog Input Event - 32-bit without time.

group33_var2 

Frozen Analog Input Event - 16-bit without time.

group33_var3 

Frozen Analog Input Event - 32-bit with time.

group33_var4 

Frozen Analog Input Event - 16-bit with time.

group33_var5 

Frozen Analog Input Event - Single-precision floating point without time.

group33_var6 

Frozen Analog Input Event - Double-precision floating point without time.

group33_var7 

Frozen Analog Input Event - Single-precision floating point with time.

group33_var8 

Frozen Analog Input Event - Double-precision floating point with time.

group34_var0 

Analog Input Reporting Deadband - Default variation.

group34_var1 

Analog Input Reporting Deadband - 16-bit.

group34_var2 

Analog Input Reporting Deadband - 32-bit.

group34_var3 

Analog Input Reporting Deadband - Single-precision floating point.

group40_var0 

Analog Output Status - Default variation.

group40_var1 

Analog Output Status - 32-bit with flags.

group40_var2 

Analog Output Status - 16-bit with flags.

group40_var3 

Analog Output Status - Single-precision floating point with flags.

group40_var4 

Analog Output Status - Double-precision floating point with flags.

group41_var1 

Analog Output - 32-bit.

group41_var2 

Analog Output - 16-bit.

group41_var3 

Analog Output - Single-precision floating point.

group41_var4 

Analog Output - Double-precision floating point.

group42_var0 

Analog Output Event - Default variation.

group42_var1 

Analog Output Event - 32-bit without time.

group42_var2 

Analog Output Event - 16-bit without time.

group42_var3 

Analog Output Event - 32-bit with time.

group42_var4 

Analog Output Event - 16-bit with time.

group42_var5 

Analog Output Event - Single-precision floating point without time.

group42_var6 

Analog Output Event - Double-precision floating point without time.

group42_var7 

Analog Output Event - Single-precision floating point with time.

group42_var8 

Analog Output Event - Double-precision floating point with time.

group43_var1 

Analog Output Command Event - 32-bit without time.

group43_var2 

Analog Output Command Event - 16-bit without time.

group43_var3 

Analog Output Command Event - 32-bit with time.

group43_var4 

Analog Output Command Event - 16-bit with time.

group43_var5 

Analog Output Command Event - Single-precision floating point without time.

group43_var6 

Analog Output Command Event - Double-precision floating point without time.

group43_var7 

Analog Output Command Event - Single-precision floating point with time.

group43_var8 

Analog Output Command Event - Double-precision floating point with time.

group50_var1 

Time and Date - Absolute time.

group50_var2 

Time and Date - Absolute time and interval.

group50_var3 

Time and Date - Absolute time at last recorded time.

group50_var4 

Time and Date - Indexed absolute time and long interval.

group51_var1 

Time and date CTO - Absolute time, synchronized.

group51_var2 

Time and date CTO - Absolute time, unsynchronized.

group52_var1 

Time delay - Coarse.

group52_var2 

Time delay - Fine.

group60_var1 

Class objects - Class 0 data.

group60_var2 

Class objects - Class 1 data.

group60_var3 

Class objects - Class 2 data.

group60_var4 

Class objects - Class 3 data.

group70_var2 

File control - authentication.

group70_var3 

File control - file command.

group70_var4 

File control - file command status.

group70_var5 

File control - file transport.

group70_var6 

File control - file transport status.

group70_var7 

File control - file descriptor.

group70_var8 

File control - file specification string.

group80_var1 

Internal Indications - Packed format.

group102_var0 

Unsigned Integer - Default Variation.

group102_var1 

Unsigned Integer - 8-bit.

group110 

Octet String.

group111 

Octet String Event.

◆ VariationListAttr

enum class dnp3::VariationListAttr
strong

Enumeration of all the variation list attributes.

Enumerator
unknown 

The attribute variation is not defined or is not part of the default set.

list_of_variations 

Variation 255 - List of attribute variations.

◆ WriteTimeResult

enum class dnp3::WriteTimeResult
strong

Write time result used by OutstationApplication::write_absolute_time()

Enumerator
ok 

The write time operation succeeded.

parameter_error 

The request parameters are nonsensical.

not_supported 

Writing time is not supported by this outstation (translated to NO_FUNC_CODE_SUPPORT).

Function Documentation

◆ to_string() [1/80]

const char * dnp3::to_string ( AnalogCommandType  value)

convert an instance of enum AnalogCommandType into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [2/80]

const char * dnp3::to_string ( AppDecodeLevel  value)

convert an instance of enum AppDecodeLevel into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [3/80]

const char * dnp3::to_string ( AttrDefError  value)

convert an instance of enum AttrDefError into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [4/80]

const char * dnp3::to_string ( AutoTimeSync  value)

convert an instance of enum AutoTimeSync into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [5/80]

const char * dnp3::to_string ( BitStringAttr  value)

convert an instance of enum BitStringAttr into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [6/80]

const char * dnp3::to_string ( BoolAttr  value)

convert an instance of enum BoolAttr into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [7/80]

const char * dnp3::to_string ( BroadcastAction  value)

convert an instance of enum BroadcastAction into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [8/80]

const char * dnp3::to_string ( CertificateMode  value)

convert an instance of enum CertificateMode into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [9/80]

const char * dnp3::to_string ( ClientState  value)

convert an instance of enum ClientState into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [10/80]

const char * dnp3::to_string ( CommandError  value)

convert an instance of enum CommandError into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [11/80]

const char * dnp3::to_string ( CommandMode  value)

convert an instance of enum CommandMode into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [12/80]

const char * dnp3::to_string ( CommandStatus  value)

convert an instance of enum CommandStatus into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [13/80]

const char * dnp3::to_string ( ConnectionState  value)

convert an instance of enum ConnectionState into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [14/80]

const char * dnp3::to_string ( DataBits  value)

convert an instance of enum DataBits into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [15/80]

const char * dnp3::to_string ( DoubleBit  value)

convert an instance of enum DoubleBit into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [16/80]

const char * dnp3::to_string ( EmptyResponseError  value)

convert an instance of enum EmptyResponseError into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [17/80]

const char * dnp3::to_string ( EventAnalogInputVariation  value)

convert an instance of enum EventAnalogInputVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [18/80]

const char * dnp3::to_string ( EventAnalogOutputStatusVariation  value)

convert an instance of enum EventAnalogOutputStatusVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [19/80]

const char * dnp3::to_string ( EventBinaryInputVariation  value)

convert an instance of enum EventBinaryInputVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [20/80]

const char * dnp3::to_string ( EventBinaryOutputStatusVariation  value)

convert an instance of enum EventBinaryOutputStatusVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [21/80]

const char * dnp3::to_string ( EventClass  value)

convert an instance of enum EventClass into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [22/80]

const char * dnp3::to_string ( EventCounterVariation  value)

convert an instance of enum EventCounterVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [23/80]

const char * dnp3::to_string ( EventDoubleBitBinaryInputVariation  value)

convert an instance of enum EventDoubleBitBinaryInputVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [24/80]

const char * dnp3::to_string ( EventFrozenCounterVariation  value)

convert an instance of enum EventFrozenCounterVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [25/80]

const char * dnp3::to_string ( EventMode  value)

convert an instance of enum EventMode into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [26/80]

const char * dnp3::to_string ( FileError  value)

convert an instance of enum FileError into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [27/80]

const char * dnp3::to_string ( FileMode  value)

convert an instance of enum FileMode into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [28/80]

const char * dnp3::to_string ( FileType  value)

convert an instance of enum FileType into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [29/80]

const char * dnp3::to_string ( FloatAttr  value)

convert an instance of enum FloatAttr into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [30/80]

const char * dnp3::to_string ( FlowControl  value)

convert an instance of enum FlowControl into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [31/80]

const char * dnp3::to_string ( FreezeResult  value)

convert an instance of enum FreezeResult into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [32/80]

const char * dnp3::to_string ( FreezeType  value)

convert an instance of enum FreezeType into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [33/80]

const char * dnp3::to_string ( FunctionCode  value)

convert an instance of enum FunctionCode into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [34/80]

const char * dnp3::to_string ( IntAttr  value)

convert an instance of enum IntAttr into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [35/80]

const char * dnp3::to_string ( LinkDecodeLevel  value)

convert an instance of enum LinkDecodeLevel into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [36/80]

const char * dnp3::to_string ( LinkErrorMode  value)

convert an instance of enum LinkErrorMode into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [37/80]

const char * dnp3::to_string ( LinkReadMode  value)

convert an instance of enum LinkReadMode into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [38/80]

const char * dnp3::to_string ( LinkStatusError  value)

convert an instance of enum LinkStatusError into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [39/80]

const char * dnp3::to_string ( LogLevel  value)

convert an instance of enum LogLevel into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [40/80]

const char * dnp3::to_string ( LogOutputFormat  value)

convert an instance of enum LogOutputFormat into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [41/80]

const char * dnp3::to_string ( MinTlsVersion  value)

convert an instance of enum MinTlsVersion into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [42/80]

const char * dnp3::to_string ( Nothing  value)

convert an instance of enum Nothing into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [43/80]

const char * dnp3::to_string ( OctetStringAttr  value)

convert an instance of enum OctetStringAttr into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [44/80]

const char * dnp3::to_string ( OperateType  value)

convert an instance of enum OperateType into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [45/80]

const char * dnp3::to_string ( OpType  value)

convert an instance of enum OpType into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [46/80]

const char * dnp3::to_string ( ParamError  value)

convert an instance of enum ParamError into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [47/80]

const char * dnp3::to_string ( Parity  value)

convert an instance of enum Parity into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [48/80]

const char * dnp3::to_string ( PhysDecodeLevel  value)

convert an instance of enum PhysDecodeLevel into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [49/80]

const char * dnp3::to_string ( PortState  value)

convert an instance of enum PortState into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [50/80]

const char * dnp3::to_string ( QualifierCode  value)

convert an instance of enum QualifierCode into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [51/80]

const char * dnp3::to_string ( ReadError  value)

convert an instance of enum ReadError into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [52/80]

const char * dnp3::to_string ( ReadType  value)

convert an instance of enum ReadType into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [53/80]

const char * dnp3::to_string ( ResponseFunction  value)

convert an instance of enum ResponseFunction into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [54/80]

const char * dnp3::to_string ( RestartDelayType  value)

convert an instance of enum RestartDelayType into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [55/80]

const char * dnp3::to_string ( RestartError  value)

convert an instance of enum RestartError into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [56/80]

const char * dnp3::to_string ( StaticAnalogInputVariation  value)

convert an instance of enum StaticAnalogInputVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [57/80]

const char * dnp3::to_string ( StaticAnalogOutputStatusVariation  value)

convert an instance of enum StaticAnalogOutputStatusVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [58/80]

const char * dnp3::to_string ( StaticBinaryInputVariation  value)

convert an instance of enum StaticBinaryInputVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [59/80]

const char * dnp3::to_string ( StaticBinaryOutputStatusVariation  value)

convert an instance of enum StaticBinaryOutputStatusVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [60/80]

const char * dnp3::to_string ( StaticCounterVariation  value)

convert an instance of enum StaticCounterVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [61/80]

const char * dnp3::to_string ( StaticDoubleBitBinaryInputVariation  value)

convert an instance of enum StaticDoubleBitBinaryInputVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [62/80]

const char * dnp3::to_string ( StaticFrozenCounterVariation  value)

convert an instance of enum StaticFrozenCounterVariation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [63/80]

const char * dnp3::to_string ( StopBits  value)

convert an instance of enum StopBits into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [64/80]

const char * dnp3::to_string ( StringAttr  value)

convert an instance of enum StringAttr into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [65/80]

const char * dnp3::to_string ( TaskError  value)

convert an instance of enum TaskError into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [66/80]

const char * dnp3::to_string ( TaskType  value)

convert an instance of enum TaskType into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [67/80]

const char * dnp3::to_string ( TimeAttr  value)

convert an instance of enum TimeAttr into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [68/80]

const char * dnp3::to_string ( TimeFormat  value)

convert an instance of enum TimeFormat into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [69/80]

const char * dnp3::to_string ( TimeQuality  value)

convert an instance of enum TimeQuality into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [70/80]

const char * dnp3::to_string ( TimeSyncError  value)

convert an instance of enum TimeSyncError into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [71/80]

const char * dnp3::to_string ( TimeSyncMode  value)

convert an instance of enum TimeSyncMode into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [72/80]

const char * dnp3::to_string ( TransportDecodeLevel  value)

convert an instance of enum TransportDecodeLevel into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [73/80]

const char * dnp3::to_string ( TripCloseCode  value)

convert an instance of enum TripCloseCode into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [74/80]

const char * dnp3::to_string ( UdpSocketMode  value)

convert an instance of enum UdpSocketMode into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [75/80]

const char * dnp3::to_string ( UintAttr  value)

convert an instance of enum UintAttr into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [76/80]

const char * dnp3::to_string ( UpdateFlagsType  value)

convert an instance of enum UpdateFlagsType into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [77/80]

const char * dnp3::to_string ( UpdateResult  value)

convert an instance of enum UpdateResult into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [78/80]

const char * dnp3::to_string ( Variation  value)

convert an instance of enum Variation into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [79/80]

const char * dnp3::to_string ( VariationListAttr  value)

convert an instance of enum VariationListAttr into a C-style string

Parameters
valueenum value
Returns
C-style string constant

◆ to_string() [80/80]

const char * dnp3::to_string ( WriteTimeResult  value)

convert an instance of enum WriteTimeResult into a C-style string

Parameters
valueenum value
Returns
C-style string constant

Variable Documentation

◆ dnp3_version_major

constexpr uint64_t dnp3::dnp3_version_major = 1
constexpr

major version number

◆ dnp3_version_minor

constexpr uint64_t dnp3::dnp3_version_minor = 6
constexpr

minor version number

◆ dnp3_version_patch

constexpr uint64_t dnp3::dnp3_version_patch = 0
constexpr

patch version number

◆ dnp3_version_string

constexpr char const* dnp3::dnp3_version_string = "1.6.0"
constexpr

version number as the string major.minor.patch