dnp3 (C API) 1.1.0
|
Dynamic information required by the outstation from the user application. More...
#include <dnp3.h>
Data Fields | |
uint16_t(* | get_processing_delay_ms )(void *) |
Returns the DELAY_MEASUREMENT delay. More... | |
dnp3_write_time_result_t(* | write_absolute_time )(uint64_t, void *) |
Handle a write of the absolute time during time synchronization procedures. More... | |
dnp3_application_iin_t(* | get_application_iin )(void *) |
Returns the application-controlled IIN bits. More... | |
dnp3_restart_delay_t(* | cold_restart )(void *) |
Request that the outstation perform a cold restart (IEEE-1815 2012, p. 58) More... | |
dnp3_restart_delay_t(* | warm_restart )(void *) |
Request that the outstation perform a warm restart (IEEE-1815 2012, p. 58) More... | |
dnp3_freeze_result_t(* | freeze_counters_all )(dnp3_freeze_type_t, dnp3_database_handle_t *, void *) |
Freeze all the counters. More... | |
dnp3_freeze_result_t(* | freeze_counters_range )(uint16_t, uint16_t, dnp3_freeze_type_t, dnp3_database_handle_t *, void *) |
Freeze a range of counters. More... | |
void(* | on_destroy )(void *arg) |
Callback when the underlying owner doesn't need the interface anymore. More... | |
void * | ctx |
Context data. More... | |
Dynamic information required by the outstation from the user application.
dnp3_restart_delay_t(* dnp3_outstation_application_t::cold_restart) (void *) |
Request that the outstation perform a cold restart (IEEE-1815 2012, p. 58)
The outstation will not automatically restart. It is the responsibility of the user application to handle this request and take the appropriate action.
ctx | Context data |
void* dnp3_outstation_application_t::ctx |
Context data.
dnp3_freeze_result_t(* dnp3_outstation_application_t::freeze_counters_all) (dnp3_freeze_type_t, dnp3_database_handle_t *, void *) |
Freeze all the counters.
freeze_type | Type of freeze operation |
database_handle | Database handle |
ctx | Context data |
dnp3_freeze_result_t(* dnp3_outstation_application_t::freeze_counters_range) (uint16_t, uint16_t, dnp3_freeze_type_t, dnp3_database_handle_t *, void *) |
Freeze a range of counters.
start | Start index to freeze (inclusive) |
stop | Stop index to freeze (inclusive) |
freeze_type | Type of freeze operation |
database_handle | Database handle |
ctx | Context data |
dnp3_application_iin_t(* dnp3_outstation_application_t::get_application_iin) (void *) |
Returns the application-controlled IIN bits.
ctx | Context data |
uint16_t(* dnp3_outstation_application_t::get_processing_delay_ms) (void *) |
Returns the DELAY_MEASUREMENT delay.
The value returned by this method is used in conjunction with the DELAY_MEASUREMENT function code and returned in a g52v2 time delay object as part of a non-LAN time synchronization procedure.
It represents the processing delay from receiving the request to sending the response. This parameter should almost always use the default value of zero as only an RTOS or bare metal system would have access to this level of timing. Modern hardware can almost always respond in less than 1 millisecond anyway.
For more information, see IEEE-1815 2012, p. 64.
ctx | Context data |
void(* dnp3_outstation_application_t::on_destroy) (void *arg) |
Callback when the underlying owner doesn't need the interface anymore.
arg | Context data |
dnp3_restart_delay_t(* dnp3_outstation_application_t::warm_restart) (void *) |
Request that the outstation perform a warm restart (IEEE-1815 2012, p. 58)
The outstation will not automatically restart. It is the responsibility of the user application to handle this request and take the appropriate action.
ctx | Context data |
dnp3_write_time_result_t(* dnp3_outstation_application_t::write_absolute_time) (uint64_t, void *) |
Handle a write of the absolute time during time synchronization procedures.
time | Received time in milliseconds since EPOCH (only 48 bits are used) |
ctx | Context data |