Bugfix/bactext enumeration updates 2024 (#1020)
* Extended some BACnet enumerations from 135-2024 protocol-revision 25-30. * Changed usage of _FIRST and _LAST to _MIN and _MAX in some enumerations to be consistent. * Added object type and services supported BACnetBitString sizes for protocol revision 25-30 *Added new BACnetPropertyIdentifier, BACnetEngineeringUnits, BACnetEventState, BACnetRestartReason, BACnetLifeSafetyMode, BACnetLifeSafetyOperation, BACnetLifeSafetyState, BACnet_Services_Supported, BACnetLightingOperation, BACnetBinaryLightingPV, BACnetNetworkPortCommand, BACnetAuthenticationDecision, BACnetAuthorizationPosture, BACnetFaultType, BACnetPriorityFilter, BACnetResultFlags, and BACnetSuccessFilter enumerations. * Added BACnet text for BACnetLifeSafetyMode, BACnetLifeSafetyOperation, BACnetRestartReason, BACnetNetworkType, BACnetNetworkNumberQuality, BACnetNetworkPortCommand, BACnetAuthenticationDecision, BACnetAuthorizationPosture, BACnetFaultType, BACnetPriorityFilter, BACnetSuccessFilter, and BACnetResultFlags.
This commit is contained in:
@@ -91,6 +91,20 @@ The git repositories are hosted at the following sites:
|
||||
|
||||
### Added
|
||||
|
||||
* Added object type and services supported BACnetBitString sizes for
|
||||
protocol revision 25-30. (#1020)
|
||||
* Added new BACnet text for BACnetLifeSafetyMode, BACnetLifeSafetyOperation,
|
||||
BACnetRestartReason, BACnetNetworkType, BACnetNetworkNumberQuality,
|
||||
BACnetNetworkPortCommand, BACnetAuthenticationDecision,
|
||||
BACnetAuthorizationPosture, BACnetFaultType, BACnetPriorityFilter,
|
||||
BACnetSuccessFilter, and BACnetResultFlags. (#1020)
|
||||
* Added new BACnetPropertyIdentifier, BACnetEngineeringUnits, BACnetEventState,
|
||||
BACnetRestartReason, BACnetLifeSafetyMode, BACnetLifeSafetyOperation,
|
||||
BACnetLifeSafetyState, BACnet_Services_Supported, BACnetLightingOperation,
|
||||
BACnetBinaryLightingPV, BACnetNetworkPortCommand,
|
||||
BACnetAuthenticationDecision, BACnetAuthorizationPosture, BACnetFaultType,
|
||||
BACnetPriorityFilter, BACnetResultFlags, and BACnetSuccessFilter
|
||||
enumerations. (#1020)
|
||||
* Added the option to specify a target destination for
|
||||
apps/server-discover. (#958)
|
||||
* Added Program object task state transitions from request and callbacks. (#960)
|
||||
|
||||
+3
-7
@@ -22,8 +22,8 @@
|
||||
#include "bacnet/iam.h"
|
||||
#include "bacnet/arf.h"
|
||||
#include "bacnet/npdu.h"
|
||||
#include "bacnet/abort.h"
|
||||
#include "bacnet/apdu.h"
|
||||
#include "bacport.h"
|
||||
#include "bacnet/whois.h"
|
||||
#include "bacnet/rp.h"
|
||||
#include "bacnet/proplist.h"
|
||||
@@ -40,6 +40,7 @@
|
||||
#include "bacnet/datalink/bip.h"
|
||||
#include "bacnet/basic/bbmd/h_bbmd.h"
|
||||
#include "bacnet/datalink/dlenv.h"
|
||||
#include "bacport.h"
|
||||
#include "bacepics.h"
|
||||
|
||||
/* (Doxygen note: The next two lines pull all the following Javadoc
|
||||
@@ -201,12 +202,7 @@ static void MyAbortHandler(
|
||||
#endif
|
||||
Error_Detected = true;
|
||||
Last_Error_Class = ERROR_CLASS_SERVICES;
|
||||
if (abort_reason < MAX_BACNET_ABORT_REASON) {
|
||||
Last_Error_Code =
|
||||
(ERROR_CODE_ABORT_BUFFER_OVERFLOW - 1) + abort_reason;
|
||||
} else {
|
||||
Last_Error_Code = ERROR_CODE_ABORT_OTHER;
|
||||
}
|
||||
Last_Error_Code = abort_convert_to_error_code(abort_reason);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -166,7 +166,7 @@ static void Init_Service_Handlers(void)
|
||||
Device_Init(NULL);
|
||||
/* create some dynamically created objects as examples */
|
||||
object_data.object_instance = BACNET_MAX_INSTANCE;
|
||||
for (i = 0; i <= BACNET_OBJECT_TYPE_LAST; i++) {
|
||||
for (i = 0; i <= BACNET_OBJECT_TYPE_RESERVED_MIN; i++) {
|
||||
object_data.object_type = i;
|
||||
if (Device_Create_Object(&object_data)) {
|
||||
printf(
|
||||
|
||||
+2
-2
@@ -2244,7 +2244,7 @@ static int bacapp_snprintf_enumerated(
|
||||
ret_val = bacapp_snprintf_property_identifier(str, str_len, value);
|
||||
break;
|
||||
case PROP_OBJECT_TYPE:
|
||||
if (value <= BACNET_OBJECT_TYPE_LAST) {
|
||||
if (value <= BACNET_OBJECT_TYPE_RESERVED_MIN) {
|
||||
ret_val = bacapp_snprintf(
|
||||
str, str_len, "%s", bactext_object_type_name(value));
|
||||
} else if (value <= BACNET_OBJECT_TYPE_RESERVED_MAX) {
|
||||
@@ -2472,7 +2472,7 @@ static int bacapp_snprintf_object_id(
|
||||
|
||||
slen = bacapp_snprintf(str, str_len, "(");
|
||||
ret_val += bacapp_snprintf_shift(slen, &str, &str_len);
|
||||
if (object_id->type <= BACNET_OBJECT_TYPE_LAST) {
|
||||
if (object_id->type <= BACNET_OBJECT_TYPE_RESERVED_MIN) {
|
||||
slen = bacapp_snprintf(
|
||||
str, str_len, "%s, ", bactext_object_type_name(object_id->type));
|
||||
} else if (object_id->type < BACNET_OBJECT_TYPE_RESERVED_MAX) {
|
||||
|
||||
+31
-4
@@ -24,8 +24,8 @@
|
||||
|
||||
/* This stack implements this version of BACnet */
|
||||
#define BACNET_PROTOCOL_VERSION 1
|
||||
/* Although this stack can implement a later revision,
|
||||
* sometimes another revision is desired */
|
||||
/* Although this stack can implement any revision,
|
||||
* sometimes a specific revision is desired */
|
||||
#ifndef BACNET_PROTOCOL_REVISION
|
||||
#define BACNET_PROTOCOL_REVISION 24
|
||||
#endif
|
||||
@@ -91,7 +91,7 @@
|
||||
#define MAX_ASHRAE_OBJECT_TYPE 57
|
||||
#define MAX_BACNET_SERVICES_SUPPORTED 41
|
||||
#elif (BACNET_PROTOCOL_REVISION == 18) || (BACNET_PROTOCOL_REVISION == 19)
|
||||
/* from 135-2016 version of the BACnet Standard */
|
||||
/* ANSI/ASHRAE 135-2016 */
|
||||
#define MAX_ASHRAE_OBJECT_TYPE 60
|
||||
#define MAX_BACNET_SERVICES_SUPPORTED 44
|
||||
#elif (BACNET_PROTOCOL_REVISION == 20) || (BACNET_PROTOCOL_REVISION == 21)
|
||||
@@ -99,6 +99,8 @@
|
||||
#define MAX_ASHRAE_OBJECT_TYPE 63
|
||||
#define MAX_BACNET_SERVICES_SUPPORTED 47
|
||||
#elif (BACNET_PROTOCOL_REVISION == 22)
|
||||
/* Addendum 135-2016bj, 135-2016by, 135-2016bz */
|
||||
/* ANSI/ASHRAE 135-2020 */
|
||||
#define MAX_ASHRAE_OBJECT_TYPE 63
|
||||
#define MAX_BACNET_SERVICES_SUPPORTED 47
|
||||
#elif (BACNET_PROTOCOL_REVISION == 23)
|
||||
@@ -106,9 +108,34 @@
|
||||
#define MAX_ASHRAE_OBJECT_TYPE 63
|
||||
#define MAX_BACNET_SERVICES_SUPPORTED 47
|
||||
#elif (BACNET_PROTOCOL_REVISION == 24)
|
||||
/* Addendum 135-2020ca, 135-2020cc, 135-2020bv */
|
||||
/* Addendum 135-2020bv, 135-2020ca, 135-2020cc, 135-2020ce */
|
||||
#define MAX_ASHRAE_OBJECT_TYPE 65
|
||||
#define MAX_BACNET_SERVICES_SUPPORTED 49
|
||||
#elif (BACNET_PROTOCOL_REVISION == 25)
|
||||
/* Addendum 135-2020cf */
|
||||
#define MAX_ASHRAE_OBJECT_TYPE 65
|
||||
#define MAX_BACNET_SERVICES_SUPPORTED 49
|
||||
#elif (BACNET_PROTOCOL_REVISION == 26)
|
||||
/* Addendum 135-2020ch, 135-2020ck, 135-2020cn, 135-2020cq, 135-2020cs */
|
||||
#define MAX_ASHRAE_OBJECT_TYPE 65
|
||||
#define MAX_BACNET_SERVICES_SUPPORTED 49
|
||||
#elif (BACNET_PROTOCOL_REVISION == 27)
|
||||
/* Addendum 135-2020bx, 135-2020ci */
|
||||
#define MAX_ASHRAE_OBJECT_TYPE 65
|
||||
#define MAX_BACNET_SERVICES_SUPPORTED 49
|
||||
#elif (BACNET_PROTOCOL_REVISION == 28)
|
||||
/* Addendum 135-2020cj, 135-2020co */
|
||||
#define MAX_ASHRAE_OBJECT_TYPE 65
|
||||
#define MAX_BACNET_SERVICES_SUPPORTED 49
|
||||
#elif (BACNET_PROTOCOL_REVISION == 29)
|
||||
/* Addendum 135-2020cp Addition of Authentication and Authorization */
|
||||
/* ANSI/ASHRAE 135-2024 */
|
||||
#define MAX_ASHRAE_OBJECT_TYPE 65
|
||||
#define MAX_BACNET_SERVICES_SUPPORTED 50
|
||||
#elif (BACNET_PROTOCOL_REVISION == 30)
|
||||
/* Addendum 135-2020cm BACnet Energy Services Interface */
|
||||
#define MAX_ASHRAE_OBJECT_TYPE 65
|
||||
#define MAX_BACNET_SERVICES_SUPPORTED 50
|
||||
#else
|
||||
#error MAX_ASHRAE_OBJECT_TYPE and MAX_BACNET_SERVICES_SUPPORTED not defined!
|
||||
#endif
|
||||
|
||||
+223
-69
@@ -8,7 +8,7 @@
|
||||
#ifndef BACNET_ENUMERATIONS_H
|
||||
#define BACNET_ENUMERATIONS_H
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetPropertyIdentifier {
|
||||
PROP_ACKED_TRANSITIONS = 0,
|
||||
PROP_ACK_REQUIRED = 1,
|
||||
PROP_ACTION = 2,
|
||||
@@ -568,8 +568,24 @@ typedef enum {
|
||||
PROP_HIGH_END_TRIM = 4194335,
|
||||
PROP_LOW_END_TRIM = 4194336,
|
||||
PROP_TRIM_FADE_TIME = 4194337,
|
||||
/* Addendum 135-2020bx */
|
||||
/* enumerations 4194338-4194340 are defined in Addendum 2020bx */
|
||||
PROP_DEVICE_ADDRESS_PROXY_ENABLE = 4194338,
|
||||
PROP_DEVICE_ADDRESS_PROXY_TABLE = 4194339,
|
||||
PROP_DEVICE_ADDRESS_PROXY_TIMEOUT = 4194340,
|
||||
/* enumerations 4194341-4194342 are defined in Addendum 2020cj */
|
||||
PROP_DEFAULT_ON_VALUE = 4194341,
|
||||
PROP_LAST_ON_VALUE = 4194342,
|
||||
/* enumerations 4194343-4194349 are defined in Addendum 2020cp */
|
||||
PROP_AUTHORIZATION_CACHE = 4194343,
|
||||
PROP_AUTHORIZATION_GROUPS = 4194344,
|
||||
PROP_AUTHORIZATION_POLICY = 4194345,
|
||||
PROP_AUTHORIZATION_SCOPE = 4194346,
|
||||
PROP_AUTHORIZATION_SERVER = 4194347,
|
||||
PROP_AUTHORIZATION_STATUS = 4194348,
|
||||
PROP_MAX_PROXIED_I_AMS_PER_SECOND = 4194349,
|
||||
/* update this value which is used in testing */
|
||||
PROP_RESERVED_RANGE_LAST = 4194337,
|
||||
PROP_RESERVED_RANGE_LAST = 4194349,
|
||||
/* Enumerated values 4194303-16777215 are reserved
|
||||
for definition by ASHRAE. */
|
||||
/* do the max range inside of enum so that
|
||||
@@ -583,9 +599,12 @@ typedef enum {
|
||||
EVENT_HIGH_LIMIT_ENABLE = 2
|
||||
} BACNET_LIMIT_ENABLE;
|
||||
|
||||
typedef enum { ACTION_DIRECT = 0, ACTION_REVERSE = 1 } BACNET_ACTION;
|
||||
typedef enum BACnetAction {
|
||||
ACTION_DIRECT = 0,
|
||||
ACTION_REVERSE = 1
|
||||
} BACNET_ACTION;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetBinaryPV {
|
||||
MIN_BINARY_PV = 0, /* for validating incoming values */
|
||||
BINARY_INACTIVE = 0,
|
||||
BINARY_ACTIVE = 1,
|
||||
@@ -599,13 +618,18 @@ typedef enum {
|
||||
ACTION_FLOAT
|
||||
} BACNET_ACTION_VALUE_TYPE;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetEventState {
|
||||
EVENT_STATE_NORMAL = 0,
|
||||
EVENT_STATE_FAULT = 1,
|
||||
EVENT_STATE_OFFNORMAL = 2,
|
||||
EVENT_STATE_HIGH_LIMIT = 3,
|
||||
EVENT_STATE_LOW_LIMIT = 4,
|
||||
EVENT_STATE_LIFE_SAFETY_ALARM = 5,
|
||||
EVENT_STATE_MAX = 5
|
||||
/* Enumerated values 0-63 are reserved for definition by ASHRAE.
|
||||
Enumerated values 64-65535 may be used by others subject to
|
||||
the procedures and constraints described in Clause 23.
|
||||
The last enumeration used in this version is 5. */
|
||||
} BACNET_EVENT_STATE;
|
||||
|
||||
typedef enum {
|
||||
@@ -614,7 +638,7 @@ typedef enum {
|
||||
EVENT_ENABLE_TO_NORMAL = 4
|
||||
} BACNET_EVENT_ENABLE;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetDeviceStatus {
|
||||
STATUS_OPERATIONAL = 0,
|
||||
STATUS_OPERATIONAL_READ_ONLY = 1,
|
||||
STATUS_DOWNLOAD_REQUIRED = 2,
|
||||
@@ -622,9 +646,12 @@ typedef enum {
|
||||
STATUS_NON_OPERATIONAL = 4,
|
||||
STATUS_BACKUP_IN_PROGRESS = 5,
|
||||
MAX_DEVICE_STATUS = 6
|
||||
/* Enumerated values 0-63 are reserved for definition by ASHRAE.
|
||||
Enumerated values 64-65535 may be used by others subject to
|
||||
the procedures and constraints described in Clause 23. */
|
||||
} BACNET_DEVICE_STATUS;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetEngineeringUnits {
|
||||
/* Enumerated values 0-255 are reserved for definition by ASHRAE. */
|
||||
/* Acceleration */
|
||||
UNITS_METERS_PER_SECOND_PER_SECOND = 166,
|
||||
@@ -739,6 +766,7 @@ typedef enum {
|
||||
UNITS_PER_MILLISECOND = 47824,
|
||||
/* Humidity */
|
||||
UNITS_GRAMS_OF_WATER_PER_KILOGRAM_DRY_AIR = 28,
|
||||
UNITS_GRAINS_OF_WATER_PER_POUND_DRY_AIR = 47972,
|
||||
UNITS_PERCENT_RELATIVE_HUMIDITY = 29,
|
||||
/* Length */
|
||||
UNITS_MICROMETERS = 194,
|
||||
@@ -865,6 +893,9 @@ typedef enum {
|
||||
UNITS_SECONDS = 73,
|
||||
UNITS_HUNDREDTHS_SECONDS = 158,
|
||||
UNITS_MILLISECONDS = 159,
|
||||
UNITS_MICROSECONDS = 47979,
|
||||
UNITS_NANOSECONDS = 47980,
|
||||
UNITS_PICOSECONDS = 47981,
|
||||
/* Torque */
|
||||
UNITS_NEWTON_METERS = 160,
|
||||
UNITS_POUND_FORCE_FEET = 47904,
|
||||
@@ -995,6 +1026,10 @@ typedef enum {
|
||||
UNITS_MILLIGRAMS_PER_CUBIC_CENTIMETER = 47895,
|
||||
UNITS_MICROGRAMS_PER_CUBIC_CENTIMETER = 47896,
|
||||
UNITS_NANOGRAMS_PER_CUBIC_CENTIMETER = 47897,
|
||||
UNITS_PARTICLES_PER_CUBIC_FOOT = 47968,
|
||||
UNITS_PARTICLES_PER_CUBIC_METER = 47969,
|
||||
UNITS_PICOCURIES_PER_LITER = 47970,
|
||||
UNITS_BECQUERELS_PER_CUBIC_METER = 47971,
|
||||
UNITS_BECQUERELS = 222,
|
||||
UNITS_KILOBECQUERELS = 223,
|
||||
UNITS_MEGABECQUERELS = 224,
|
||||
@@ -1038,7 +1073,12 @@ typedef enum {
|
||||
UNITS_SITE_UNIT8 = 47965,
|
||||
UNITS_SITE_UNIT9 = 47966,
|
||||
UNITS_SITE_UNIT10 = 47967,
|
||||
|
||||
UNITS_DEGREE_HOURS_CELSIUS = 47973,
|
||||
UNITS_DEGREE_HOURS_FAHRENHEIT = 47974,
|
||||
UNITS_DEGREE_MINUTES_CELSIUS = 47975,
|
||||
UNITS_DEGREE_MINUTES_FAHRENHEIT = 47976,
|
||||
UNITS_DEGREE_SECONDS_CELSIUS = 47977,
|
||||
UNITS_DEGREE_SECONDS_FAHRENHEIT = 47978,
|
||||
UNITS_OHM_METER_SQUARED_PER_METER = 237,
|
||||
UNITS_AMPERE_SECONDS = 238,
|
||||
UNITS_VOLT_AMPERE_HOURS = 239,
|
||||
@@ -1072,6 +1112,7 @@ typedef enum {
|
||||
/* 47813 - NOT USED */
|
||||
UNITS_MILLIREMS = 47814,
|
||||
UNITS_MILLIREMS_PER_HOUR = 47815,
|
||||
/* Enumerated values 47808-49999 are reserved for definition by ASHRAE. */
|
||||
UNITS_RESERVED_RANGE_MAX2 = 49999,
|
||||
UNITS_PROPRIETARY_RANGE_MIN2 = 50000,
|
||||
/* Enumerated values 50000-65535 may be used by others
|
||||
@@ -1082,7 +1123,7 @@ typedef enum {
|
||||
UNITS_PROPRIETARY_RANGE_MAX2 = 65535
|
||||
} BACNET_ENGINEERING_UNITS;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetPolarity {
|
||||
POLARITY_NORMAL = 0,
|
||||
POLARITY_REVERSE = 1,
|
||||
MAX_POLARITY = 2
|
||||
@@ -1123,7 +1164,7 @@ typedef enum BACnetProgramError {
|
||||
PROGRAM_ERROR_PROPRIETARY_MAX = 65535
|
||||
} BACNET_PROGRAM_ERROR;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetRestartReason {
|
||||
RESTART_REASON_UNKNOWN = 0,
|
||||
RESTART_REASON_COLDSTART = 1,
|
||||
RESTART_REASON_WARMSTART = 2,
|
||||
@@ -1132,6 +1173,9 @@ typedef enum {
|
||||
RESTART_REASON_HARDWARE_WATCHDOG = 5,
|
||||
RESTART_REASON_SOFTWARE_WATCHDOG = 6,
|
||||
RESTART_REASON_SUSPENDED = 7,
|
||||
RESTART_REASON_ACTIVATE_CHANGES = 8,
|
||||
RESTART_REASON_RESERVED_MIN = 9,
|
||||
RESTART_REASON_RESERVED_MAX = 63,
|
||||
/* Enumerated values 0-63 are reserved for definition by ASHRAE.
|
||||
Enumerated values 64-255 may be used by others subject to the
|
||||
procedures and constraints described in Clause 23. */
|
||||
@@ -1246,6 +1290,8 @@ typedef enum BACnetReliability {
|
||||
RELIABILITY_FAULTS_LISTED = 23,
|
||||
RELIABILITY_REFERENCED_OBJECT_FAULT = 24,
|
||||
RELIABILITY_MULTI_STATE_OUT_OF_RANGE = 25,
|
||||
RELIABILITY_RESERVED_MIN = 26,
|
||||
RELIABILITY_RESERVED_MAX = 63,
|
||||
/* Enumerated values 0-63 are reserved for definition by ASHRAE. */
|
||||
/* Enumerated values 64-65535 may be used by others subject to */
|
||||
/* the procedures and constraints described in Clause 23. */
|
||||
@@ -1256,7 +1302,7 @@ typedef enum BACnetReliability {
|
||||
RELIABILITY_PROPRIETARY_MAX = 65535
|
||||
} BACNET_RELIABILITY;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetEventType {
|
||||
EVENT_CHANGE_OF_BITSTRING = 0,
|
||||
EVENT_CHANGE_OF_STATE = 1,
|
||||
EVENT_CHANGE_OF_VALUE = 2,
|
||||
@@ -1285,22 +1331,17 @@ typedef enum {
|
||||
/* It is expected that these enumerated values will correspond to */
|
||||
/* the use of the complex-event-type CHOICE [6] of the */
|
||||
/* BACnetNotificationParameters production. */
|
||||
/* The last enumeration used in this version is 22. */
|
||||
/* do the max range inside of enum so that
|
||||
compilers will allocate adequate sized datatype for enum
|
||||
which is used to store decoding */
|
||||
EVENT_PROPRIETARY_MIN = 64,
|
||||
EVENT_PROPRIETARY_MAX = 65535
|
||||
} BACNET_EVENT_TYPE;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetFileAccessMethod {
|
||||
FILE_RECORD_ACCESS = 0,
|
||||
FILE_STREAM_ACCESS = 1,
|
||||
FILE_RECORD_AND_STREAM_ACCESS = 2
|
||||
} BACNET_FILE_ACCESS_METHOD;
|
||||
|
||||
typedef enum {
|
||||
MIN_LIFE_SAFETY_MODE = 0,
|
||||
typedef enum BACnetLifeSafetyMode {
|
||||
LIFE_SAFETY_MODE_OFF = 0,
|
||||
LIFE_SAFETY_MODE_ON = 1,
|
||||
LIFE_SAFETY_MODE_TEST = 2,
|
||||
@@ -1316,7 +1357,13 @@ typedef enum {
|
||||
LIFE_SAFETY_MODE_DISABLED = 12,
|
||||
LIFE_SAFETY_MODE_AUTOMATIC_RELEASE_DISABLED = 13,
|
||||
LIFE_SAFETY_MODE_DEFAULT = 14,
|
||||
MAX_LIFE_SAFETY_MODE = 15,
|
||||
LIFE_SAFETY_MODE_ACTIVATED_OEO_ALARM = 15,
|
||||
LIFE_SAFETY_MODE_ACTIVATED_OEO_EVACUATE = 16,
|
||||
LIFE_SAFETY_MODE_ACTIVATED_OEO_PHASE1_RECALL = 17,
|
||||
LIFE_SAFETY_MODE_ACTIVATED_OEO_UNAVAILABLE = 18,
|
||||
LIFE_SAFETY_MODE_DEACTIVATED = 19,
|
||||
LIFE_SAFETY_MODE_RESERVED_MIN = 20,
|
||||
LIFE_SAFETY_MODE_RESERVED_MAX = 255,
|
||||
/* Enumerated values 0-255 are reserved for definition by ASHRAE. */
|
||||
/* Enumerated values 256-65535 may be used by others subject to */
|
||||
/* procedures and constraints described in Clause 23. */
|
||||
@@ -1327,7 +1374,7 @@ typedef enum {
|
||||
LIFE_SAFETY_MODE_PROPRIETARY_MAX = 65535
|
||||
} BACNET_LIFE_SAFETY_MODE;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetLifeSafetyOperation {
|
||||
LIFE_SAFETY_OP_NONE = 0,
|
||||
LIFE_SAFETY_OP_SILENCE = 1,
|
||||
LIFE_SAFETY_OP_SILENCE_AUDIBLE = 2,
|
||||
@@ -1348,8 +1395,7 @@ typedef enum {
|
||||
LIFE_SAFETY_OP_PROPRIETARY_MAX = 65535
|
||||
} BACNET_LIFE_SAFETY_OPERATION;
|
||||
|
||||
typedef enum {
|
||||
MIN_LIFE_SAFETY_STATE = 0,
|
||||
typedef enum BACnetLifeSafetyState {
|
||||
LIFE_SAFETY_STATE_QUIET = 0,
|
||||
LIFE_SAFETY_STATE_PRE_ALARM = 1,
|
||||
LIFE_SAFETY_STATE_ALARM = 2,
|
||||
@@ -1374,7 +1420,19 @@ typedef enum {
|
||||
LIFE_SAFETY_STATE_GENERAL_ALARM = 21,
|
||||
LIFE_SAFETY_STATE_SUPERVISORY = 22,
|
||||
LIFE_SAFETY_STATE_TEST_SUPERVISORY = 23,
|
||||
MAX_LIFE_SAFETY_STATE = 24,
|
||||
LIFE_SAFETY_STATE_NON_DEFAULT_MODE = 24,
|
||||
LIFE_SAFETY_STATE_OEO_UNAVAILABLE = 25,
|
||||
LIFE_SAFETY_STATE_OEO_ALARM = 26,
|
||||
LIFE_SAFETY_STATE_OEO_PHASE1_RECALL = 27,
|
||||
LIFE_SAFETY_STATE_OEO_EVACUATE = 28,
|
||||
LIFE_SAFETY_STATE_OEO_UNAFFECTED = 29,
|
||||
LIFE_SAFETY_STATE_TEST_OEO_UNAVAILABLE = 30,
|
||||
LIFE_SAFETY_STATE_TEST_OEO_ALARM = 31,
|
||||
LIFE_SAFETY_STATE_TEST_OEO_PHASE1_RECALL = 32,
|
||||
LIFE_SAFETY_STATE_TEST_OEO_EVACUATE = 33,
|
||||
LIFE_SAFETY_STATE_TEST_OEO_UNAFFECTED = 34,
|
||||
LIFE_SAFETY_STATE_RESERVED_MIN = 35,
|
||||
LIFE_SAFETY_STATE_RESERVED_MAX = 255,
|
||||
/* Enumerated values 0-255 are reserved for definition by ASHRAE. */
|
||||
/* Enumerated values 256-65535 may be used by others subject to */
|
||||
/* procedures and constraints described in Clause 23. */
|
||||
@@ -1385,7 +1443,7 @@ typedef enum {
|
||||
LIFE_SAFETY_STATE_PROPRIETARY_MAX = 65535
|
||||
} BACNET_LIFE_SAFETY_STATE;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetSilencedState {
|
||||
SILENCED_STATE_UNSILENCED = 0,
|
||||
SILENCED_STATE_AUDIBLE_SILENCED = 1,
|
||||
SILENCED_STATE_VISIBLE_SILENCED = 2,
|
||||
@@ -1400,7 +1458,7 @@ typedef enum {
|
||||
SILENCED_STATE_PROPRIETARY_MAX = 65535
|
||||
} BACNET_SILENCED_STATE;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetMaintenance {
|
||||
MAINTENANCE_NONE = 0,
|
||||
MAINTENANCE_PERIODIC_TEST = 1,
|
||||
MAINTENANCE_NEED_SERVICE_OPERATIONAL = 2,
|
||||
@@ -1415,7 +1473,7 @@ typedef enum {
|
||||
MAINTENANCE_PROPRIETARY_MAX = 65535
|
||||
} BACNET_MAINTENANCE;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetNotifyType {
|
||||
NOTIFY_ALARM = 0,
|
||||
NOTIFY_EVENT = 1,
|
||||
NOTIFY_ACK_NOTIFICATION = 2,
|
||||
@@ -1489,7 +1547,7 @@ typedef enum BACnetObjectType {
|
||||
OBJECT_AUDIT_REPORTER = 62, /* Addendum 135-2016bi */
|
||||
OBJECT_COLOR = 63, /* Addendum 135-2020ca */
|
||||
OBJECT_COLOR_TEMPERATURE = 64, /* Addendum 135-2020ca */
|
||||
BACNET_OBJECT_TYPE_LAST = OBJECT_COLOR_TEMPERATURE,
|
||||
BACNET_OBJECT_TYPE_RESERVED_MIN = 65,
|
||||
BACNET_OBJECT_TYPE_RESERVED_MAX = 127,
|
||||
/* Enumerated values 0-127 are reserved for definition by ASHRAE. */
|
||||
/* Enumerated values 128-1023 may be used by others subject to */
|
||||
@@ -1504,7 +1562,7 @@ typedef enum BACnetObjectType {
|
||||
OBJECT_NONE = 65535
|
||||
} BACNET_OBJECT_TYPE;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetSegmentation {
|
||||
SEGMENTATION_BOTH = 0,
|
||||
SEGMENTATION_TRANSMIT = 1,
|
||||
SEGMENTATION_RECEIVE = 2,
|
||||
@@ -1771,6 +1829,7 @@ typedef enum BACnet_Services_Supported {
|
||||
/* Security Services */
|
||||
SERVICE_SUPPORTED_AUTHENTICATE = 24,
|
||||
SERVICE_SUPPORTED_REQUEST_KEY = 25,
|
||||
SERVICE_SUPPORTED_AUTH_REQUEST = 49,
|
||||
/* Unconfirmed Services */
|
||||
SERVICE_SUPPORTED_I_AM = 26,
|
||||
SERVICE_SUPPORTED_I_HAVE = 27,
|
||||
@@ -1787,23 +1846,25 @@ typedef enum BACnet_Services_Supported {
|
||||
/* Other services to be added as they are defined. */
|
||||
/* All values in this production are reserved */
|
||||
/* for definition by ASHRAE. */
|
||||
/* note: MAX_BACNET_SERVICES_SUPPORTED is defined in bacdef.h
|
||||
based on protocol revision */
|
||||
} BACNET_SERVICES_SUPPORTED;
|
||||
|
||||
/* Bit String Enumerations */
|
||||
typedef enum {
|
||||
typedef enum BACnetStatusFlags {
|
||||
STATUS_FLAG_IN_ALARM = 0,
|
||||
STATUS_FLAG_FAULT = 1,
|
||||
STATUS_FLAG_OVERRIDDEN = 2,
|
||||
STATUS_FLAG_OUT_OF_SERVICE = 3
|
||||
} BACNET_STATUS_FLAGS;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetLogStatus {
|
||||
LOG_STATUS_LOG_DISABLED = 0,
|
||||
LOG_STATUS_BUFFER_PURGED = 1,
|
||||
LOG_STATUS_LOG_INTERRUPTED = 2
|
||||
} BACNET_LOG_STATUS;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetLoggingType {
|
||||
LOGGING_TYPE_POLLED = 0,
|
||||
LOGGING_TYPE_COV = 1,
|
||||
LOGGING_TYPE_TRIGGERED = 2
|
||||
@@ -1915,7 +1976,9 @@ typedef enum {
|
||||
/* Enumerated values 0-63 are reserved for definition by ASHRAE. */
|
||||
/* Enumerated values 64-255 may be used by others subject to */
|
||||
/* the procedures and constraints described in Clause 23. */
|
||||
MAX_BACNET_ABORT_REASON = 12,
|
||||
ABORT_REASON_RESERVED_MIN = 12,
|
||||
/* for legacy applications */
|
||||
MAX_BACNET_ABORT_REASON = ABORT_REASON_RESERVED_MIN,
|
||||
ABORT_REASON_PROPRIETARY_FIRST = 64,
|
||||
ABORT_REASON_PROPRIETARY_LAST = 255
|
||||
} BACNET_ABORT_REASON;
|
||||
@@ -2276,6 +2339,7 @@ typedef enum BACnetRelationship {
|
||||
BACNET_RELATIONSHIP_RECEIVES_COOL_WATER = 27,
|
||||
BACNET_RELATIONSHIP_SUPPLIES_STEAM = 28,
|
||||
BACNET_RELATIONSHIP_RECEIVES_STEAM = 29,
|
||||
BACNET_RELATIONSHIP_RESERVED_MIN = 30,
|
||||
BACNET_RELATIONSHIP_RESERVED_MAX = 1023,
|
||||
BACNET_RELATIONSHIP_PROPRIETARY_MIN = 1024,
|
||||
BACNET_RELATIONSHIP_PROPRIETARY_MAX = 65535
|
||||
@@ -2309,12 +2373,22 @@ typedef enum BACnetLightingOperation {
|
||||
BACNET_LIGHTS_WARN_OFF = 8,
|
||||
BACNET_LIGHTS_WARN_RELINQUISH = 9,
|
||||
BACNET_LIGHTS_STOP = 10,
|
||||
MAX_BACNET_LIGHTING_OPERATION = 11,
|
||||
#if (BACNET_PROTOCOL_REVISION >= 28)
|
||||
/* Addendum cj to ANSI/ASHRAE Standard 135-2020 */
|
||||
BACNET_LIGHTS_RESTORE_ON = 11,
|
||||
BACNET_LIGHTS_DEFAULT_ON = 12,
|
||||
BACNET_LIGHTS_TOGGLE_RESTORE = 13,
|
||||
BACNET_LIGHTS_TOGGLE_DEFAULT = 14,
|
||||
BACNET_LIGHTS_RESERVED_MIN = 15,
|
||||
#else
|
||||
BACNET_LIGHTS_RESERVED_MIN = 11,
|
||||
#endif
|
||||
BACNET_LIGHTS_RESERVED_MAX = 63,
|
||||
/* Enumerated values 0-255 are reserved for definition by ASHRAE.
|
||||
Enumerated values 256-65535 may be used by others subject to
|
||||
the procedures and constraints described in Clause 23 */
|
||||
BACNET_LIGHTS_PROPRIETARY_FIRST = 256,
|
||||
BACNET_LIGHTS_PROPRIETARY_LAST = 65535
|
||||
BACNET_LIGHTS_PROPRIETARY_MIN = 256,
|
||||
BACNET_LIGHTS_PROPRIETARY_MAX = 65535
|
||||
} BACNET_LIGHTING_OPERATION;
|
||||
|
||||
typedef enum BACnetLightingInProgress {
|
||||
@@ -2334,8 +2408,10 @@ typedef enum BACnetLightingTransition {
|
||||
/* Enumerated values 0-63 are reserved for definition by ASHRAE.
|
||||
Enumerated values 64-255 may be used by others subject to
|
||||
the procedures and constraints described in Clause 23. */
|
||||
BACNET_LIGHTING_TRANSITION_PROPRIETARY_FIRST = 64,
|
||||
BACNET_LIGHTING_TRANSITION_PROPRIETARY_LAST = 255
|
||||
BACNET_LIGHTING_TRANSITION_RESERVED_MIN = 3,
|
||||
BACNET_LIGHTING_TRANSITION_RESERVED_MAX = 63,
|
||||
BACNET_LIGHTING_TRANSITION_PROPRIETARY_MIN = 64,
|
||||
BACNET_LIGHTING_TRANSITION_PROPRIETARY_MAX = 255
|
||||
} BACNET_LIGHTING_TRANSITION;
|
||||
|
||||
typedef enum BACnetBinaryLightingPV {
|
||||
@@ -2345,7 +2421,8 @@ typedef enum BACnetBinaryLightingPV {
|
||||
BINARY_LIGHTING_PV_WARN_OFF = 3,
|
||||
BINARY_LIGHTING_PV_WARN_RELINQUISH = 4,
|
||||
BINARY_LIGHTING_PV_STOP = 5,
|
||||
BINARY_LIGHTING_PV_MAX = 6,
|
||||
BINARY_LIGHTING_PV_TOGGLE = 6,
|
||||
BINARY_LIGHTING_PV_MAX = 7,
|
||||
/* -- Enumerated values 0-63 are reserved for definition by ASHRAE.
|
||||
-- Enumerated values 64-255 may be used by others
|
||||
-- subject to the procedures and constraints described in Clause 23. */
|
||||
@@ -2409,7 +2486,7 @@ typedef enum BACnetEventTransitionMask {
|
||||
|
||||
/* Access Enumerations */
|
||||
/* Door Alarm State */
|
||||
typedef enum {
|
||||
typedef enum BACnetDoorAlarmState {
|
||||
DOOR_ALARM_STATE_NORMAL = 0,
|
||||
DOOR_ALARM_STATE_ALARM = 1,
|
||||
DOOR_ALARM_STATE_DOOR_OPEN_TOO_LONG = 2,
|
||||
@@ -2419,17 +2496,20 @@ typedef enum {
|
||||
DOOR_ALARM_STATE_LOCK_DOWN = 6,
|
||||
DOOR_ALARM_STATE_FREE_ACCESS = 7,
|
||||
DOOR_ALARM_STATE_EGRESS_OPEN = 8
|
||||
/* Enumerated values 0-255 are reserved for definition by ASHRAE.
|
||||
Enumerated values 256-65535 may be used by others subject to
|
||||
the procedures and constraints described in Clause 23. */
|
||||
} BACNET_DOOR_ALARM_STATE;
|
||||
|
||||
/* Door Secured Status */
|
||||
typedef enum {
|
||||
typedef enum BACnetDoorSecuredStatus {
|
||||
DOOR_SECURED_STATUS_SECURED = 0,
|
||||
DOOR_SECURED_STATUS_UNSECURED = 1,
|
||||
DOOR_SECURED_STATUS_UNKNOWN = 2
|
||||
} BACNET_DOOR_SECURED_STATUS;
|
||||
|
||||
/* Door Status */
|
||||
typedef enum {
|
||||
typedef enum BACnetDoorStatus {
|
||||
DOOR_STATUS_CLOSED = 0,
|
||||
DOOR_STATUS_OPENED = 1,
|
||||
DOOR_STATUS_UNKNOWN = 2,
|
||||
@@ -2440,10 +2520,13 @@ typedef enum {
|
||||
DOOR_STATUS_OPENING = 7,
|
||||
DOOR_STATUS_SAFETY_LOCKED = 8,
|
||||
DOOR_STATUS_LIMITED_OPENED = 9
|
||||
/* Enumerated values 0-1023 are reserved for definition by ASHRAE.
|
||||
Enumerated values 1024-65535 may be used by others subject to
|
||||
the procedures and constraints described in Clause 23. */
|
||||
} BACNET_DOOR_STATUS;
|
||||
|
||||
/* Door Value */
|
||||
typedef enum {
|
||||
typedef enum BACnetDoorValue {
|
||||
DOOR_VALUE_LOCK = 0,
|
||||
DOOR_VALUE_UNLOCK = 1,
|
||||
DOOR_VALUE_PULSE_UNLOCK = 2,
|
||||
@@ -2451,7 +2534,7 @@ typedef enum {
|
||||
} BACNET_DOOR_VALUE;
|
||||
|
||||
/* Lock Status */
|
||||
typedef enum {
|
||||
typedef enum BACnetLockStatus {
|
||||
LOCK_STATUS_LOCKED = 0,
|
||||
LOCK_STATUS_UNLOCKED = 1,
|
||||
LOCK_STATUS_LOCK_FAULT = 2,
|
||||
@@ -2460,7 +2543,7 @@ typedef enum {
|
||||
} BACNET_LOCK_STATUS;
|
||||
|
||||
/* Access Event */
|
||||
typedef enum {
|
||||
typedef enum BACnetAccessEvent {
|
||||
ACCESS_EVENT_NONE = 0,
|
||||
ACCESS_EVENT_GRANTED = 1,
|
||||
ACCESS_EVENT_MUSTER = 2,
|
||||
@@ -2515,10 +2598,13 @@ typedef enum {
|
||||
ACCESS_EVENT_DENIED_VERIFICATION_FAILED = 162,
|
||||
ACCESS_EVENT_DENIED_VERIFICATION_TIMEOUT = 163,
|
||||
ACCESS_EVENT_DENIED_OTHER = 164
|
||||
/* Enumerated values 0-511 are reserved for definition by ASHRAE.
|
||||
Enumerated values 512-65535 may be used by others subject to
|
||||
the procedures and constraints described in Clause 23. */
|
||||
} BACNET_ACCESS_EVENT;
|
||||
|
||||
/* Authentication Status */
|
||||
typedef enum {
|
||||
typedef enum BACnetAuthenticationStatus {
|
||||
AUTHENTICATION_STATUS_NOT_READY = 0,
|
||||
AUTHENTICATION_STATUS_READY = 1,
|
||||
AUTHENTICATION_STATUS_DISABLED = 2,
|
||||
@@ -2529,17 +2615,20 @@ typedef enum {
|
||||
} BACNET_AUTHENTICATION_STATUS;
|
||||
|
||||
/* Authorization Mode */
|
||||
typedef enum {
|
||||
typedef enum BACnetAuthorizationMode {
|
||||
AUTHORIZATION_MODE_AUTHORIZE = 0,
|
||||
AUTHORIZATION_MODE_GRANT_ACTIVE = 1,
|
||||
AUTHORIZATION_MODE_DENY_ALL = 2,
|
||||
AUTHORIZATION_MODE_VERIFICATION_REQUIRED = 3,
|
||||
AUTHORIZATION_MODE_AUTHORIZATION_DELAYED = 4,
|
||||
AUTHORIZATION_MODE_NONE = 5
|
||||
/* Enumerated values 0-63 are reserved for definition by ASHRAE.
|
||||
Enumerated values 64-65535 may be used by others subject to
|
||||
the procedures and constraints described in Clause 23. */
|
||||
} BACNET_AUTHORIZATION_MODE;
|
||||
|
||||
/* Access Passback Mode */
|
||||
typedef enum {
|
||||
typedef enum BACnetAccessPassbackMode {
|
||||
ACCESS_PASSBACK_MODE_PASSBACK_OFF = 0,
|
||||
ACCESS_PASSBACK_MODE_HARD_PASSBACK = 1,
|
||||
ACCESS_PASSBACK_MODE_SOFT_PASSBACK = 2
|
||||
@@ -2562,14 +2651,18 @@ typedef enum BACnetAccessZoneOccupancyState {
|
||||
} BACNET_ACCESS_ZONE_OCCUPANCY_STATE;
|
||||
|
||||
/* Access User Type */
|
||||
typedef enum {
|
||||
typedef enum BACnetAccessUserType {
|
||||
ACCESS_USER_TYPE_ASSET = 0,
|
||||
ACCESS_USER_TYPE_GROUP = 1,
|
||||
ACCESS_USER_TYPE_PERSON = 2
|
||||
/* Enumerated values 0-63 are reserved for definition by ASHRAE.
|
||||
Enumerated values 64-65535 may be used by others subject to
|
||||
the procedures and constraints described
|
||||
-- in Clause 23. */
|
||||
} BACNET_ACCESS_USER_TYPE;
|
||||
|
||||
/* Access Authentication Factor Disable */
|
||||
typedef enum {
|
||||
typedef enum BACnetAccessAuthenticationFactorDisable {
|
||||
ACCESS_AUTHENTICATION_FACTOR_DISABLE_NONE = 0,
|
||||
ACCESS_AUTHENTICATION_FACTOR_DISABLE_DISABLED = 1,
|
||||
ACCESS_AUTHENTICATION_FACTOR_DISABLE_DISABLED_LOST = 2,
|
||||
@@ -2577,10 +2670,13 @@ typedef enum {
|
||||
ACCESS_AUTHENTICATION_FACTOR_DISABLE_DISABLED_DAMAGED = 4,
|
||||
ACCESS_AUTHENTICATION_FACTOR_DISABLE_DISABLED_DESTROYED = 5,
|
||||
ACCESS_AUTHENTICATION_FACTOR_DISABLE_MAX = 6
|
||||
/* Enumerated values 0-63 are reserved for definition by ASHRAE.
|
||||
Enumerated values 64-65535 may be used by others subject to
|
||||
the procedures and constraints described in Clause 23. */
|
||||
} BACNET_ACCESS_AUTHENTICATION_FACTOR_DISABLE;
|
||||
|
||||
/* Authorization Exemption */
|
||||
typedef enum {
|
||||
typedef enum BACnetAuthorizationExemption {
|
||||
AUTHORIZATION_EXEMPTION_PASSBACK = 0,
|
||||
AUTHORIZATION_EXEMPTION_OCCUPANCY_CHECK = 1,
|
||||
AUTHORIZATION_EXEMPTION_ACCESS_RIGHTS = 2,
|
||||
@@ -2588,6 +2684,9 @@ typedef enum {
|
||||
AUTHORIZATION_EXEMPTION_DENY = 4,
|
||||
AUTHORIZATION_EXEMPTION_VERIFICATION = 5,
|
||||
AUTHORIZATION_EXEMPTION_AUTHORIZATION_DELAY = 6
|
||||
/* Enumerated values 0-63 are reserved for definition by ASHRAE.
|
||||
Enumerated values 64-255 may be used by others subject to
|
||||
the procedures and constraints described in Clause 23. */
|
||||
} BACNET_AUTHORIZATION_EXEMPTION;
|
||||
|
||||
/* The Network Reject Reasons for NETWORK_MESSAGE_REJECT_MESSAGE_TO_NETWORK */
|
||||
@@ -2610,8 +2709,7 @@ typedef enum BACnetWriteStatus {
|
||||
BACNET_WRITE_STATUS_FAILED = 3
|
||||
} BACNET_WRITE_STATUS;
|
||||
|
||||
/* BACnetNetworkType ::= ENUMERATED */
|
||||
typedef enum {
|
||||
typedef enum BACnetNetworkType {
|
||||
PORT_TYPE_ETHERNET = 0,
|
||||
PORT_TYPE_ARCNET = 1,
|
||||
PORT_TYPE_MSTP = 2,
|
||||
@@ -2632,29 +2730,27 @@ typedef enum {
|
||||
/* Enumerated values 0-63 are reserved for definition by ASHRAE.
|
||||
Enumerated values 64-255 may be used by others subject to the
|
||||
procedures and constraints described in Clause 23. */
|
||||
PORT_TYPE_RESERVED_FIRST = 12,
|
||||
PORT_TYPE_RESERVED_LAST = 63,
|
||||
PORT_TYPE_PROPRIETARY_FIRST = 64,
|
||||
PORT_TYPE_RESERVED_MIN = 12,
|
||||
PORT_TYPE_RESERVED_MAX = 63,
|
||||
PORT_TYPE_PROPRIETARY_MIN = 64,
|
||||
/* For BACnet/SC network port implementations with
|
||||
a protocol revision Protocol_Revision 17 and higher through 23,
|
||||
BACnet/SC network ports shall be represented by a Network Port
|
||||
object at the BACNET_APPLICATION protocol level with
|
||||
a proprietary network type value. */
|
||||
PORT_TYPE_BSC_INTERIM = 64,
|
||||
PORT_TYPE_PROPRIETARY_LAST = 255,
|
||||
PORT_TYPE_PROPRIETARY_MAX = 255,
|
||||
PORT_TYPE_MAX = 255
|
||||
} BACNET_PORT_TYPE;
|
||||
|
||||
/* BACnetNetworkNumberQuality ::= ENUMERATED */
|
||||
typedef enum {
|
||||
typedef enum BACnetNetworkNumberQuality {
|
||||
PORT_QUALITY_UNKNOWN = 0,
|
||||
PORT_QUALITY_LEARNED = 1,
|
||||
PORT_QUALITY_LEARNED_CONFIGURED = 2,
|
||||
PORT_QUALITY_CONFIGURED = 3
|
||||
} BACNET_PORT_QUALITY;
|
||||
|
||||
/* BACnetNetworkPortCommand :: = ENUMERATED */
|
||||
typedef enum {
|
||||
typedef enum BACnetNetworkPortCommand {
|
||||
PORT_COMMAND_IDLE = 0,
|
||||
PORT_COMMAND_DISCARD_CHANGES = 1,
|
||||
PORT_COMMAND_RENEW_FD_REGISTRATION = 2,
|
||||
@@ -2663,15 +2759,16 @@ typedef enum {
|
||||
PORT_COMMAND_RESTART_AUTONEGOTIATION = 5,
|
||||
PORT_COMMAND_DISCONNECT = 6,
|
||||
PORT_COMMAND_RESTART_PORT = 7,
|
||||
PORT_COMMAND_GENERATE_CSR_FILE = 8,
|
||||
PORT_COMMAND_VALIDATE_CHANGES = 9,
|
||||
PORT_COMMAND_RESERVED_FIRST = 10,
|
||||
PORT_COMMAND_RESERVED_LAST = 127,
|
||||
PORT_COMMAND_RESTART_DISCOVERY = 8,
|
||||
PORT_COMMAND_GENERATE_CSR_FILE = 9,
|
||||
PORT_COMMAND_VALIDATE_CHANGES = 10,
|
||||
PORT_COMMAND_RESERVED_MIN = 11,
|
||||
PORT_COMMAND_RESERVED_MAX = 127,
|
||||
/* Enumerated values 0-127 are reserved for definition by ASHRAE.
|
||||
Enumerated values 128-255 may be used by others subject to the
|
||||
procedures and constraints described in Clause 23. */
|
||||
PORT_COMMAND_PROPRIETARY_FIRST = 128,
|
||||
PORT_COMMAND_PROPRIETARY_LAST = 255,
|
||||
PORT_COMMAND_PROPRIETARY_MIN = 128,
|
||||
PORT_COMMAND_PROPRIETARY_MAX = 255,
|
||||
PORT_COMMAND_MAX = 255
|
||||
} BACNET_PORT_COMMAND;
|
||||
|
||||
@@ -2740,7 +2837,7 @@ typedef enum {
|
||||
SEC_RESP_UNKNOWN_SOURCE_MESSAGE = 25
|
||||
} BACNET_SECURITY_RESPONSE_CODE;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetAccessCredentialDisable {
|
||||
ACCESS_CREDENTIAL_DISABLE_NONE = 0,
|
||||
ACCESS_CREDENTIAL_DISABLE = 1,
|
||||
ACCESS_CREDENTIAL_DISABLE_MANUAL = 2,
|
||||
@@ -2751,7 +2848,7 @@ typedef enum {
|
||||
the procedures and constraints described in Clause 23. */
|
||||
} BACNET_ACCESS_CREDENTIAL_DISABLE;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetAccessCredentialDisableReason {
|
||||
CREDENTIAL_DISABLED = 0,
|
||||
CREDENTIAL_DISABLED_NEEDS_PROVISIONING = 1,
|
||||
CREDENTIAL_DISABLED_UNASSIGNED = 2,
|
||||
@@ -2781,7 +2878,7 @@ typedef enum {
|
||||
the procedures and constraints described in Clause 23. */
|
||||
} BACNET_AUTHENTICATION_DISABLE_REASON;
|
||||
|
||||
typedef enum {
|
||||
typedef enum BACnetAuthenticationFactorType {
|
||||
AUTHENTICATION_FACTOR_UNDEFINED = 0,
|
||||
AUTHENTICATION_FACTOR_ERROR = 1,
|
||||
AUTHENTICATION_FACTOR_CUSTOM = 2,
|
||||
@@ -3045,4 +3142,61 @@ typedef enum BACnetSCConnectionState {
|
||||
BACNET_SC_CONNECTION_STATE_MAX = 4
|
||||
} BACNET_SC_CONNECTION_STATE;
|
||||
|
||||
typedef enum BACnetAuthenticationDecision {
|
||||
BACNET_AUTHENTICATION_DECISION_ALLOW_MATCH = 0,
|
||||
BACNET_AUTHENTICATION_DECISION_DENY_MISMATCH = 1,
|
||||
BACNET_AUTHENTICATION_DECISION_DENY_NON_RELAY = 2
|
||||
} BACNET_AUTHENTICATION_DECISION;
|
||||
|
||||
typedef enum BACnetAuthorizationPosture {
|
||||
BACNET_AUTHORIZATION_POSTURE_OPEN = 0,
|
||||
BACNET_AUTHORIZATION_POSTURE_PROPRIETARY = 1,
|
||||
BACNET_AUTHORIZATION_POSTURE_CONFIGURED = 2,
|
||||
BACNET_AUTHORIZATION_POSTURE_MISCONFIGURED_PARTIAL = 3,
|
||||
BACNET_AUTHORIZATION_POSTURE_MISCONFIGURED_TOTAL = 4
|
||||
} BACNET_AUTHORIZATION_POSTURE;
|
||||
|
||||
typedef enum BACnetFaultType {
|
||||
BACNET_FAULT_TYPE_NONE = 0,
|
||||
BACNET_FAULT_TYPE_CHARACTERSTRING = 1,
|
||||
BACNET_FAULT_TYPE_EXTENDED = 2,
|
||||
BACNET_FAULT_TYPE_LIFE_SAFETY = 3,
|
||||
BACNET_FAULT_TYPE_STATE = 4,
|
||||
BACNET_FAULT_TYPE_STATUS_FLAGS = 5,
|
||||
BACNET_FAULT_TYPE_OUT_OF_RANGE = 6,
|
||||
BACNET_FAULT_TYPE_LISTED = 7
|
||||
} BACNET_FAULT_TYPE;
|
||||
|
||||
typedef enum BACnetPriorityFilter {
|
||||
BACNET_PRIORITY_FILTER_MANUAL_LIFE_SAFETY = 0,
|
||||
BACNET_PRIORITY_FILTER_AUTOMATIC_LIFE_SAFETY = 1,
|
||||
BACNET_PRIORITY_FILTER_PRIORITY_3 = 2,
|
||||
BACNET_PRIORITY_FILTER_PRIORITY_4 = 3,
|
||||
BACNET_PRIORITY_FILTER_CRITICAL_EQUIPMENT_CONTROLS = 4,
|
||||
BACNET_PRIORITY_FILTER_MINIMUM_ON_OFF = 5,
|
||||
BACNET_PRIORITY_FILTER_PRIORITY_7 = 6,
|
||||
BACNET_PRIORITY_FILTER_MANUAL_OPERATOR = 7,
|
||||
BACNET_PRIORITY_FILTER_PRIORITY_9 = 8,
|
||||
BACNET_PRIORITY_FILTER_PRIORITY_10 = 9,
|
||||
BACNET_PRIORITY_FILTER_PRIORITY_11 = 10,
|
||||
BACNET_PRIORITY_FILTER_PRIORITY_12 = 11,
|
||||
BACNET_PRIORITY_FILTER_PRIORITY_13 = 12,
|
||||
BACNET_PRIORITY_FILTER_PRIORITY_14 = 13,
|
||||
BACNET_PRIORITY_FILTER_PRIORITY_15 = 14,
|
||||
BACNET_PRIORITY_FILTER_PRIORITY_16 = 15,
|
||||
BACNET_PRIORITY_FILTER_PRIORITY_MAX = 16
|
||||
} BACNET_PRIORITY_FILTER;
|
||||
|
||||
typedef enum BACnetResultFlags {
|
||||
RESULT_FLAG_FIRST_ITEM = 0,
|
||||
RESULT_FLAG_LAST_ITEM = 1,
|
||||
RESULT_FLAG_MORE_ITEMS = 2
|
||||
} BACNET_RESULT_FLAGS;
|
||||
|
||||
typedef enum BACnetSuccessFilter {
|
||||
BACNET_SUCCESS_FILTER_ALL = 0,
|
||||
BACNET_SUCCESS_FILTER_SUCCESS_ONLY = 1,
|
||||
BACNET_SUCCESS_FILTER_FAILURES_ONLY = 2
|
||||
} BACNET_SUCCESS_FILTER;
|
||||
|
||||
#endif /* end of BACENUM_H */
|
||||
|
||||
+310
-8
@@ -147,6 +147,8 @@ INDTEXT_DATA bacnet_application_tag_names[] = {
|
||||
{ BACNET_APPLICATION_TAG_ACTION_COMMAND, "BACnetActionCommand" },
|
||||
{ BACNET_APPLICATION_TAG_SCALE, "BACnetScale" },
|
||||
{ BACNET_APPLICATION_TAG_SHED_LEVEL, "BACnetShedLevel" },
|
||||
{ BACNET_APPLICATION_TAG_ACCESS_RULE, "BACnetAccessRule" },
|
||||
{ BACNET_APPLICATION_TAG_CHANNEL_VALUE, "BACnetChannelValue" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
@@ -789,6 +791,18 @@ INDTEXT_DATA bacnet_property_names[] = {
|
||||
{ PROP_HIGH_END_TRIM, "high-end-trim" },
|
||||
{ PROP_LOW_END_TRIM, "low-end-trim" },
|
||||
{ PROP_TRIM_FADE_TIME, "trim-fade-time" },
|
||||
{ PROP_DEVICE_ADDRESS_PROXY_ENABLE, "device-address-proxy-enable" },
|
||||
{ PROP_DEVICE_ADDRESS_PROXY_TABLE, "device-address-proxy-table" },
|
||||
{ PROP_DEVICE_ADDRESS_PROXY_TIMEOUT, "device-address-proxy-timeout" },
|
||||
{ PROP_DEFAULT_ON_VALUE, "default-on-value" },
|
||||
{ PROP_LAST_ON_VALUE, "last-on-value" },
|
||||
{ PROP_AUTHORIZATION_CACHE, "authorization-cache" },
|
||||
{ PROP_AUTHORIZATION_GROUPS, "authorization-groups" },
|
||||
{ PROP_AUTHORIZATION_POLICY, "authorization-policy" },
|
||||
{ PROP_AUTHORIZATION_SCOPE, "authorization-scope" },
|
||||
{ PROP_AUTHORIZATION_SERVER, "authorization-server" },
|
||||
{ PROP_AUTHORIZATION_STATUS, "authorization-status" },
|
||||
{ PROP_MAX_PROXIED_I_AMS_PER_SECOND, "max-proxied-i-ams-per-second" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
@@ -1269,6 +1283,21 @@ INDTEXT_DATA bacnet_engineering_unit_names[] = {
|
||||
{ UNITS_SITE_UNIT8, "site-unit8" },
|
||||
{ UNITS_SITE_UNIT9, "site-unit9" },
|
||||
{ UNITS_SITE_UNIT10, "site-unit10" },
|
||||
{ UNITS_GRAINS_OF_WATER_PER_POUND_DRY_AIR,
|
||||
"grains-of-water-per-pound-dry-air" },
|
||||
{ UNITS_DEGREE_HOURS_CELSIUS, "degree-hours-celsius" },
|
||||
{ UNITS_DEGREE_HOURS_FAHRENHEIT, "degree-hours-fahrenheit" },
|
||||
{ UNITS_DEGREE_MINUTES_CELSIUS, "degree-minutes-celsius" },
|
||||
{ UNITS_DEGREE_MINUTES_FAHRENHEIT, "degree-minutes-fahrenheit" },
|
||||
{ UNITS_DEGREE_SECONDS_CELSIUS, "degree-seconds-celsius" },
|
||||
{ UNITS_DEGREE_SECONDS_FAHRENHEIT, "degree-seconds-fahrenheit" },
|
||||
{ UNITS_MICROSECONDS, "microseconds" },
|
||||
{ UNITS_NANOSECONDS, "nanoseconds" },
|
||||
{ UNITS_PICOSECONDS, "picoseconds" },
|
||||
{ UNITS_PARTICLES_PER_CUBIC_FOOT, "particles-per-cubic-foot" },
|
||||
{ UNITS_PARTICLES_PER_CUBIC_METER, "particles-per-cubic-meter" },
|
||||
{ UNITS_PICOCURIES_PER_LITER, "picocuries-per-liter" },
|
||||
{ UNITS_BECQUERELS_PER_CUBIC_METER, "becquerels-per-cubic-meter" },
|
||||
{ 0, NULL }
|
||||
/* Enumerated values 0-255 and 47808-49999 are reserved for definition by
|
||||
ASHRAE. Enumerated values 256-47807 and 50000-65535 may be used by others
|
||||
@@ -1741,8 +1770,9 @@ INDTEXT_DATA bacnet_event_state_names[] = {
|
||||
{ EVENT_STATE_NORMAL, "normal" },
|
||||
{ EVENT_STATE_FAULT, "fault" },
|
||||
{ EVENT_STATE_OFFNORMAL, "offnormal" },
|
||||
{ EVENT_STATE_HIGH_LIMIT, "high limit" },
|
||||
{ EVENT_STATE_LOW_LIMIT, "low limit" },
|
||||
{ EVENT_STATE_HIGH_LIMIT, "high-limit" },
|
||||
{ EVENT_STATE_LOW_LIMIT, "low-limit" },
|
||||
{ EVENT_STATE_LIFE_SAFETY_ALARM, "life-safety-alarm" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
@@ -1952,6 +1982,70 @@ const char *bactext_network_layer_msg_name(unsigned index)
|
||||
}
|
||||
}
|
||||
|
||||
INDTEXT_DATA bactext_life_safety_mode_names[] = {
|
||||
{ LIFE_SAFETY_MODE_OFF, "off" },
|
||||
{ LIFE_SAFETY_MODE_ON, "on" },
|
||||
{ LIFE_SAFETY_MODE_TEST, "test" },
|
||||
{ LIFE_SAFETY_MODE_MANNED, "manned" },
|
||||
{ LIFE_SAFETY_MODE_UNMANNED, "unmanned" },
|
||||
{ LIFE_SAFETY_MODE_ARMED, "armed" },
|
||||
{ LIFE_SAFETY_MODE_DISARMED, "disarmed" },
|
||||
{ LIFE_SAFETY_MODE_PREARMED, "prearmed" },
|
||||
{ LIFE_SAFETY_MODE_SLOW, "slow" },
|
||||
{ LIFE_SAFETY_MODE_FAST, "fast" },
|
||||
{ LIFE_SAFETY_MODE_DISCONNECTED, "disconnected" },
|
||||
{ LIFE_SAFETY_MODE_ENABLED, "enabled" },
|
||||
{ LIFE_SAFETY_MODE_DISABLED, "disabled" },
|
||||
{ LIFE_SAFETY_MODE_AUTOMATIC_RELEASE_DISABLED,
|
||||
"automatic-release-disabled" },
|
||||
{ LIFE_SAFETY_MODE_DEFAULT, "default" },
|
||||
{ LIFE_SAFETY_MODE_ACTIVATED_OEO_ALARM, "activated-oeo-alarm" },
|
||||
{ LIFE_SAFETY_MODE_ACTIVATED_OEO_EVACUATE, "activated-oeo-evactuate" },
|
||||
{ LIFE_SAFETY_MODE_ACTIVATED_OEO_PHASE1_RECALL,
|
||||
"activated-oeo-phase1-recall" },
|
||||
{ LIFE_SAFETY_MODE_ACTIVATED_OEO_UNAVAILABLE, "activated-oeo-unavailable" },
|
||||
{ LIFE_SAFETY_MODE_DEACTIVATED, "deactivated" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
const char *bactext_life_safety_mode_name(unsigned index)
|
||||
{
|
||||
if (index < LIFE_SAFETY_MODE_PROPRIETARY_MIN) {
|
||||
return indtext_by_index_default(
|
||||
bactext_life_safety_mode_names, index, ASHRAE_Reserved_String);
|
||||
} else if (index <= LIFE_SAFETY_MODE_PROPRIETARY_MAX) {
|
||||
return Vendor_Proprietary_String;
|
||||
} else {
|
||||
return "Invalid BACnetLifeSafetyMode";
|
||||
}
|
||||
}
|
||||
|
||||
INDTEXT_DATA bactext_life_safety_operation_names[] = {
|
||||
{ LIFE_SAFETY_OP_NONE, "none" },
|
||||
{ LIFE_SAFETY_OP_SILENCE, "silence" },
|
||||
{ LIFE_SAFETY_OP_SILENCE_AUDIBLE, "silence-audible" },
|
||||
{ LIFE_SAFETY_OP_SILENCE_VISUAL, "silence-visual" },
|
||||
{ LIFE_SAFETY_OP_RESET, "reset" },
|
||||
{ LIFE_SAFETY_OP_RESET_ALARM, "reset-alarm" },
|
||||
{ LIFE_SAFETY_OP_RESET_FAULT, "reset-fault" },
|
||||
{ LIFE_SAFETY_OP_UNSILENCE, "unsilence" },
|
||||
{ LIFE_SAFETY_OP_UNSILENCE_AUDIBLE, "unsilence-audible" },
|
||||
{ LIFE_SAFETY_OP_UNSILENCE_VISUAL, "unsilence-visual" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
const char *bactext_life_safety_operation_name(unsigned index)
|
||||
{
|
||||
if (index < LIFE_SAFETY_OP_PROPRIETARY_MIN) {
|
||||
return indtext_by_index_default(
|
||||
bactext_life_safety_operation_names, index, ASHRAE_Reserved_String);
|
||||
} else if (index <= LIFE_SAFETY_OP_PROPRIETARY_MAX) {
|
||||
return Vendor_Proprietary_String;
|
||||
} else {
|
||||
return "Invalid BACnetLifeSafetyOperation";
|
||||
}
|
||||
}
|
||||
|
||||
INDTEXT_DATA life_safety_state_names[] = {
|
||||
{ LIFE_SAFETY_STATE_QUIET, "quiet" },
|
||||
{ LIFE_SAFETY_STATE_PRE_ALARM, "pre-alarm" },
|
||||
@@ -1977,14 +2071,27 @@ INDTEXT_DATA life_safety_state_names[] = {
|
||||
{ LIFE_SAFETY_STATE_GENERAL_ALARM, "general-alarm" },
|
||||
{ LIFE_SAFETY_STATE_SUPERVISORY, "supervisory" },
|
||||
{ LIFE_SAFETY_STATE_TEST_SUPERVISORY, "test-supervisory" },
|
||||
{ LIFE_SAFETY_STATE_NON_DEFAULT_MODE, "non-default-mode" },
|
||||
{ LIFE_SAFETY_STATE_OEO_UNAVAILABLE, "oeo-unavailable" },
|
||||
{ LIFE_SAFETY_STATE_OEO_ALARM, "oeo-alarm" },
|
||||
{ LIFE_SAFETY_STATE_OEO_PHASE1_RECALL, "oeo-phase1-recall" },
|
||||
{ LIFE_SAFETY_STATE_OEO_EVACUATE, "oeo-evacuate" },
|
||||
{ LIFE_SAFETY_STATE_OEO_UNAFFECTED, "oeo-unaffected" },
|
||||
{ LIFE_SAFETY_STATE_TEST_OEO_UNAVAILABLE, "test-oeo-unavailable" },
|
||||
{ LIFE_SAFETY_STATE_TEST_OEO_ALARM, "test-oeo-alarm" },
|
||||
{ LIFE_SAFETY_STATE_TEST_OEO_PHASE1_RECALL, "test-oeo-phase1-recall" },
|
||||
{ LIFE_SAFETY_STATE_TEST_OEO_EVACUATE, "test-oeo-evacuate" },
|
||||
{ LIFE_SAFETY_STATE_TEST_OEO_UNAFFECTED, "test-oeo-unaffected" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
const char *bactext_life_safety_state_name(unsigned index)
|
||||
{
|
||||
if (index < MAX_LIFE_SAFETY_STATE) {
|
||||
if (index < LIFE_SAFETY_STATE_PROPRIETARY_MIN) {
|
||||
return indtext_by_index_default(
|
||||
life_safety_state_names, index, ASHRAE_Reserved_String);
|
||||
} else if (index <= LIFE_SAFETY_STATE_PROPRIETARY_MAX) {
|
||||
return Vendor_Proprietary_String;
|
||||
} else {
|
||||
return "Invalid BACnetLifeSafetyState";
|
||||
}
|
||||
@@ -2019,10 +2126,10 @@ INDTEXT_DATA lighting_transition[] = {
|
||||
|
||||
const char *bactext_lighting_transition(unsigned index)
|
||||
{
|
||||
if (index < BACNET_LIGHTING_TRANSITION_PROPRIETARY_FIRST) {
|
||||
if (index < BACNET_LIGHTING_TRANSITION_PROPRIETARY_MIN) {
|
||||
return indtext_by_index_default(
|
||||
lighting_transition, index, ASHRAE_Reserved_String);
|
||||
} else if (index <= BACNET_LIGHTING_TRANSITION_PROPRIETARY_LAST) {
|
||||
} else if (index <= BACNET_LIGHTING_TRANSITION_PROPRIETARY_MAX) {
|
||||
return Vendor_Proprietary_String;
|
||||
} else {
|
||||
return "Invalid BACnetLightingTransition";
|
||||
@@ -2046,10 +2153,10 @@ INDTEXT_DATA bacnet_lighting_operation_names[] = {
|
||||
|
||||
const char *bactext_lighting_operation_name(unsigned index)
|
||||
{
|
||||
if (index < BACNET_LIGHTS_PROPRIETARY_FIRST) {
|
||||
if (index < BACNET_LIGHTS_PROPRIETARY_MIN) {
|
||||
return indtext_by_index_default(
|
||||
bacnet_lighting_operation_names, index, ASHRAE_Reserved_String);
|
||||
} else if (index <= BACNET_LIGHTS_PROPRIETARY_LAST) {
|
||||
} else if (index <= BACNET_LIGHTS_PROPRIETARY_MAX) {
|
||||
return Vendor_Proprietary_String;
|
||||
} else {
|
||||
return "Invalid BACnetLightingOperation";
|
||||
@@ -2070,6 +2177,7 @@ INDTEXT_DATA bacnet_binary_lighting_pv_names[] = {
|
||||
{ BINARY_LIGHTING_PV_WARN_OFF, "warn-off" },
|
||||
{ BINARY_LIGHTING_PV_WARN_RELINQUISH, "warn-relinquish" },
|
||||
{ BINARY_LIGHTING_PV_STOP, "stop" },
|
||||
{ BINARY_LIGHTING_PV_TOGGLE, "toggle" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
@@ -2149,7 +2257,6 @@ const char *bactext_shed_level_type_name(unsigned index)
|
||||
bacnet_shed_level_type_names, index, ASHRAE_Reserved_String);
|
||||
}
|
||||
|
||||
/* note: different than DaysOfWeek bit string where 0=monday */
|
||||
INDTEXT_DATA bacnet_log_datum_names[] = {
|
||||
{ BACNET_LOG_DATUM_STATUS, "status" },
|
||||
{ BACNET_LOG_DATUM_BOOLEAN, "boolean" },
|
||||
@@ -2170,3 +2277,198 @@ const char *bactext_log_datum_name(unsigned index)
|
||||
return indtext_by_index_default(
|
||||
bacnet_log_datum_names, index, ASHRAE_Reserved_String);
|
||||
}
|
||||
|
||||
INDTEXT_DATA bactext_restart_reason_names[] = {
|
||||
{ RESTART_REASON_UNKNOWN, "unknown" },
|
||||
{ RESTART_REASON_COLDSTART, "coldstart" },
|
||||
{ RESTART_REASON_WARMSTART, "warmstart" },
|
||||
{ RESTART_REASON_DETECTED_POWER_LOST, "detected-power-lost" },
|
||||
{ RESTART_REASON_DETECTED_POWER_OFF, "detected-power-off" },
|
||||
{ RESTART_REASON_HARDWARE_WATCHDOG, "hardware-watchdog" },
|
||||
{ RESTART_REASON_SOFTWARE_WATCHDOG, "software-watchdog" },
|
||||
{ RESTART_REASON_SUSPENDED, "suspended" },
|
||||
{ RESTART_REASON_ACTIVATE_CHANGES, "activate-changes" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
const char *bactext_restart_reason_name(unsigned index)
|
||||
{
|
||||
if (index < RESTART_REASON_PROPRIETARY_MIN) {
|
||||
return indtext_by_index_default(
|
||||
bactext_restart_reason_names, index, ASHRAE_Reserved_String);
|
||||
} else if (index <= RESTART_REASON_PROPRIETARY_MAX) {
|
||||
return Vendor_Proprietary_String;
|
||||
} else {
|
||||
return "Invalid BACnetRestartReason";
|
||||
}
|
||||
}
|
||||
|
||||
INDTEXT_DATA bactext_network_port_type_names[] = {
|
||||
{ PORT_TYPE_ETHERNET, "ethernet" },
|
||||
{ PORT_TYPE_ARCNET, "arcnet" },
|
||||
{ PORT_TYPE_MSTP, "mstp" },
|
||||
{ PORT_TYPE_PTP, "ptp" },
|
||||
{ PORT_TYPE_LONTALK, "lontalk" },
|
||||
{ PORT_TYPE_BIP, "ipv4" },
|
||||
{ PORT_TYPE_ZIGBEE, "zigbee" },
|
||||
{ PORT_TYPE_VIRTUAL, "virtual" },
|
||||
{ PORT_TYPE_NON_BACNET, "non-bacnet" },
|
||||
{ PORT_TYPE_BIP6, "ipv6" },
|
||||
{ PORT_TYPE_SERIAL, "serial" },
|
||||
{ PORT_TYPE_BSC, "secure-connect" },
|
||||
{ PORT_TYPE_BSC_INTERIM, "secure-connect-interim" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
const char *bactext_network_port_type_name(unsigned index)
|
||||
{
|
||||
if (index <= PORT_TYPE_PROPRIETARY_MIN) {
|
||||
return indtext_by_index_default(
|
||||
bactext_network_port_type_names, index, ASHRAE_Reserved_String);
|
||||
} else if (index <= PORT_TYPE_PROPRIETARY_MAX) {
|
||||
return Vendor_Proprietary_String;
|
||||
} else {
|
||||
return "Invalid BACnetNetworkType";
|
||||
}
|
||||
}
|
||||
|
||||
INDTEXT_DATA bactext_network_number_quality_names[] = {
|
||||
{ PORT_QUALITY_UNKNOWN, "unknown" },
|
||||
{ PORT_QUALITY_LEARNED, "learned" },
|
||||
{ PORT_QUALITY_LEARNED_CONFIGURED, "learned-configured" },
|
||||
{ PORT_QUALITY_CONFIGURED, "configured" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
const char *bactext_network_number_quality_name(unsigned index)
|
||||
{
|
||||
return indtext_by_index_default(
|
||||
bactext_network_number_quality_names, index, ASHRAE_Reserved_String);
|
||||
}
|
||||
|
||||
INDTEXT_DATA bactext_network_port_command_names[] = {
|
||||
{ PORT_COMMAND_IDLE, "idle" },
|
||||
{ PORT_COMMAND_DISCARD_CHANGES, "discard-changes" },
|
||||
{ PORT_COMMAND_RENEW_FD_REGISTRATION, "renew-fd-registration" },
|
||||
{ PORT_COMMAND_RESTART_SLAVE_DISCOVERY, "restart-slave-discovery" },
|
||||
{ PORT_COMMAND_RENEW_DHCP, "renew-dhcp" },
|
||||
{ PORT_COMMAND_RESTART_AUTONEGOTIATION, "restart-autonegotiation" },
|
||||
{ PORT_COMMAND_DISCONNECT, "disconnect" },
|
||||
{ PORT_COMMAND_RESTART_PORT, "restart-port" },
|
||||
{ PORT_COMMAND_RESTART_DISCOVERY, "restart-discovery" },
|
||||
{ PORT_COMMAND_GENERATE_CSR_FILE, "generate-csr-file" },
|
||||
{ PORT_COMMAND_VALIDATE_CHANGES, "validate-changes" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
const char *bactext_network_port_command_name(unsigned index)
|
||||
{
|
||||
if (index < PORT_COMMAND_PROPRIETARY_MIN) {
|
||||
return indtext_by_index_default(
|
||||
bactext_network_port_command_names, index, ASHRAE_Reserved_String);
|
||||
} else if (index <= PORT_COMMAND_PROPRIETARY_MAX) {
|
||||
return Vendor_Proprietary_String;
|
||||
} else {
|
||||
return "Invalid BACnetNetworkPortCommand";
|
||||
}
|
||||
}
|
||||
|
||||
INDTEXT_DATA bactext_authentication_decision_names[] = {
|
||||
{ BACNET_AUTHENTICATION_DECISION_ALLOW_MATCH, "allow-match" },
|
||||
{ BACNET_AUTHENTICATION_DECISION_DENY_MISMATCH, "deny-mismatch" },
|
||||
{ BACNET_AUTHENTICATION_DECISION_DENY_NON_RELAY, "deny-non-relay" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
const char *bactext_authentication_decision_name(unsigned index)
|
||||
{
|
||||
return indtext_by_index_default(
|
||||
bactext_authentication_decision_names, index, ASHRAE_Reserved_String);
|
||||
}
|
||||
|
||||
INDTEXT_DATA bactext_authorization_posture_names[] = {
|
||||
{ BACNET_AUTHORIZATION_POSTURE_OPEN, "open" },
|
||||
{ BACNET_AUTHORIZATION_POSTURE_PROPRIETARY, "proprietary" },
|
||||
{ BACNET_AUTHORIZATION_POSTURE_CONFIGURED, "configured" },
|
||||
{ BACNET_AUTHORIZATION_POSTURE_MISCONFIGURED_PARTIAL,
|
||||
"misconfigured-partial" },
|
||||
{ BACNET_AUTHORIZATION_POSTURE_MISCONFIGURED_TOTAL, "misconfigured-total" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
const char *bactext_authorization_posture_name(unsigned index)
|
||||
{
|
||||
return indtext_by_index_default(
|
||||
bactext_authorization_posture_names, index, ASHRAE_Reserved_String);
|
||||
}
|
||||
|
||||
INDTEXT_DATA bactext_fault_type_names[] = {
|
||||
{ BACNET_FAULT_TYPE_NONE, "none" },
|
||||
{ BACNET_FAULT_TYPE_CHARACTERSTRING, "characterstring" },
|
||||
{ BACNET_FAULT_TYPE_EXTENDED, "extended" },
|
||||
{ BACNET_FAULT_TYPE_LIFE_SAFETY, "life-safety" },
|
||||
{ BACNET_FAULT_TYPE_STATE, "state" },
|
||||
{ BACNET_FAULT_TYPE_STATUS_FLAGS, "status-flags" },
|
||||
{ BACNET_FAULT_TYPE_OUT_OF_RANGE, "out-of-range" },
|
||||
{ BACNET_FAULT_TYPE_LISTED, "listed" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
const char *bactext_fault_type_name(unsigned index)
|
||||
{
|
||||
return indtext_by_index_default(
|
||||
bactext_fault_type_names, index, ASHRAE_Reserved_String);
|
||||
}
|
||||
|
||||
INDTEXT_DATA bacnet_priority_filter_names[] = {
|
||||
{ BACNET_PRIORITY_FILTER_MANUAL_LIFE_SAFETY, "manual-life-safety" },
|
||||
{ BACNET_PRIORITY_FILTER_AUTOMATIC_LIFE_SAFETY, "automatic-life-safety" },
|
||||
{ BACNET_PRIORITY_FILTER_PRIORITY_3, "priority-3" },
|
||||
{ BACNET_PRIORITY_FILTER_PRIORITY_4, "priority-5" },
|
||||
{ BACNET_PRIORITY_FILTER_CRITICAL_EQUIPMENT_CONTROLS,
|
||||
"critical-equipment-controls" },
|
||||
{ BACNET_PRIORITY_FILTER_MINIMUM_ON_OFF, "minimum-on-off" },
|
||||
{ BACNET_PRIORITY_FILTER_PRIORITY_7, "priority-7" },
|
||||
{ BACNET_PRIORITY_FILTER_MANUAL_OPERATOR, "manual-operator" },
|
||||
{ BACNET_PRIORITY_FILTER_PRIORITY_9, "priority-9" },
|
||||
{ BACNET_PRIORITY_FILTER_PRIORITY_10, "priority-10" },
|
||||
{ BACNET_PRIORITY_FILTER_PRIORITY_11, "priority-11" },
|
||||
{ BACNET_PRIORITY_FILTER_PRIORITY_12, "priority-12" },
|
||||
{ BACNET_PRIORITY_FILTER_PRIORITY_13, "priority-13" },
|
||||
{ BACNET_PRIORITY_FILTER_PRIORITY_14, "priority-14" },
|
||||
{ BACNET_PRIORITY_FILTER_PRIORITY_15, "priority-15" },
|
||||
{ BACNET_PRIORITY_FILTER_PRIORITY_16, "priority-16" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
const char *bacnet_priority_filter_name(unsigned index)
|
||||
{
|
||||
return indtext_by_index_default(
|
||||
bacnet_priority_filter_names, index, ASHRAE_Reserved_String);
|
||||
}
|
||||
|
||||
INDTEXT_DATA bactext_result_flags_names[] = {
|
||||
{ RESULT_FLAG_FIRST_ITEM, "first-item" },
|
||||
{ RESULT_FLAG_LAST_ITEM, "last-item" },
|
||||
{ RESULT_FLAG_MORE_ITEMS, "more-items" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
const char *bactext_result_flags_name(unsigned index)
|
||||
{
|
||||
return indtext_by_index_default(
|
||||
bactext_result_flags_names, index, ASHRAE_Reserved_String);
|
||||
}
|
||||
|
||||
INDTEXT_DATA bactext_success_filter_names[] = {
|
||||
{ BACNET_SUCCESS_FILTER_ALL, "all" },
|
||||
{ BACNET_SUCCESS_FILTER_SUCCESS_ONLY, "success-only" },
|
||||
{ BACNET_SUCCESS_FILTER_FAILURES_ONLY, "failures-only" },
|
||||
{ 0, NULL }
|
||||
};
|
||||
|
||||
const char *bactext_success_filter_name(unsigned index)
|
||||
{
|
||||
return indtext_by_index_default(
|
||||
bactext_success_filter_names, index, ASHRAE_Reserved_String);
|
||||
}
|
||||
|
||||
@@ -120,6 +120,10 @@ bool bactext_days_of_week_index(const char *search_name, unsigned *found_index);
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_network_layer_msg_name(unsigned index);
|
||||
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_life_safety_mode_name(unsigned index);
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_life_safety_operation_name(unsigned index);
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_life_safety_state_name(unsigned index);
|
||||
|
||||
@@ -158,6 +162,29 @@ const char *bactext_shed_level_type_name(unsigned index);
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_log_datum_name(unsigned index);
|
||||
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_restart_reason_name(unsigned index);
|
||||
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_network_port_type_name(unsigned index);
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_network_number_quality_name(unsigned index);
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_network_port_command_name(unsigned index);
|
||||
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_authentication_decision_name(unsigned index);
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_authorization_posture_name(unsigned index);
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_fault_type_name(unsigned index);
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bacnet_priority_filter_name(unsigned index);
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_success_filter_name(unsigned index);
|
||||
BACNET_STACK_EXPORT
|
||||
const char *bactext_result_flags_name(unsigned index);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif /* __cplusplus */
|
||||
|
||||
@@ -936,6 +936,88 @@ Lighting_Command_Stop(struct object_data *pObject, unsigned priority)
|
||||
}
|
||||
}
|
||||
|
||||
#if (BACNET_PROTOCOL_REVISION >= 28)
|
||||
/**
|
||||
* @brief Set the lighting command if the priority is active
|
||||
* @param object [in] BACnet object instance
|
||||
* @param priority [in] BACnet priority array value 1..16
|
||||
*/
|
||||
static void
|
||||
Lighting_Command_Restore_On(struct object_data *pObject, unsigned priority)
|
||||
{
|
||||
unsigned current_priority;
|
||||
|
||||
if (!pObject) {
|
||||
return;
|
||||
}
|
||||
current_priority = Present_Value_Priority(pObject);
|
||||
if (priority <= current_priority) {
|
||||
/* we have priority - configure the Lighting Command */
|
||||
lighting_command_restore_on(&pObject->Lighting_Command);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Set the lighting command if the priority is active
|
||||
* @param object [in] BACnet object instance
|
||||
* @param priority [in] BACnet priority array value 1..16
|
||||
*/
|
||||
static void
|
||||
Lighting_Command_Restore_Off(struct object_data *pObject, unsigned priority)
|
||||
{
|
||||
unsigned current_priority;
|
||||
|
||||
if (!pObject) {
|
||||
return;
|
||||
}
|
||||
current_priority = Present_Value_Priority(pObject);
|
||||
if (priority <= current_priority) {
|
||||
/* we have priority - configure the Lighting Command */
|
||||
lighting_command_restore_off(&pObject->Lighting_Command);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Set the lighting command if the priority is active
|
||||
* @param object [in] BACnet object instance
|
||||
* @param priority [in] BACnet priority array value 1..16
|
||||
*/
|
||||
static void
|
||||
Lighting_Command_Toggle_Restore(struct object_data *pObject, unsigned priority)
|
||||
{
|
||||
unsigned current_priority;
|
||||
|
||||
if (!pObject) {
|
||||
return;
|
||||
}
|
||||
current_priority = Present_Value_Priority(pObject);
|
||||
if (priority <= current_priority) {
|
||||
/* we have priority - configure the Lighting Command */
|
||||
lighting_command_toggle_restore(&pObject->Lighting_Command);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Set the lighting command if the priority is active
|
||||
* @param object [in] BACnet object instance
|
||||
* @param priority [in] BACnet priority array value 1..16
|
||||
*/
|
||||
static void
|
||||
Lighting_Command_Toggle_Default(struct object_data *pObject, unsigned priority)
|
||||
{
|
||||
unsigned current_priority;
|
||||
|
||||
if (!pObject) {
|
||||
return;
|
||||
}
|
||||
current_priority = Present_Value_Priority(pObject);
|
||||
if (priority <= current_priority) {
|
||||
/* we have priority - configure the Lighting Command */
|
||||
lighting_command_toggle_default(&pObject->Lighting_Command);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* For a given object instance-number, writes the present-value
|
||||
*
|
||||
@@ -975,7 +1057,7 @@ static bool Lighting_Output_Lighting_Command_Write(
|
||||
*error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
|
||||
return status;
|
||||
}
|
||||
if (value->operation >= MAX_BACNET_LIGHTING_OPERATION) {
|
||||
if (value->operation >= BACNET_LIGHTS_RESERVED_MIN) {
|
||||
*error_class = ERROR_CLASS_PROPERTY;
|
||||
*error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
|
||||
return status;
|
||||
@@ -1043,6 +1125,24 @@ static bool Lighting_Output_Lighting_Command_Write(
|
||||
Lighting_Command_Stop(pObject, priority);
|
||||
status = true;
|
||||
break;
|
||||
#if (BACNET_PROTOCOL_REVISION >= 28)
|
||||
case BACNET_LIGHTS_RESTORE_ON:
|
||||
Lighting_Command_Restore_On(pObject, priority);
|
||||
status = true;
|
||||
break;
|
||||
case BACNET_LIGHTS_RESTORE_OFF:
|
||||
Lighting_Command_Restore_Off(pObject, priority);
|
||||
status = true;
|
||||
break;
|
||||
case BACNET_LIGHTS_TOGGLE_RESTORE:
|
||||
Lighting_Command_Toggle_Restore(pObject, priority);
|
||||
status = true;
|
||||
break;
|
||||
case BACNET_LIGHTS_TOGGLE_DEFAULT:
|
||||
Lighting_Command_Toggle_Default(pObject, priority);
|
||||
status = true;
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
*error_class = ERROR_CLASS_PROPERTY;
|
||||
*error_code = ERROR_CODE_VALUE_OUT_OF_RANGE;
|
||||
@@ -1908,7 +2008,7 @@ bool Lighting_Output_Transition_Set(
|
||||
|
||||
pObject = Keylist_Data(Object_List, object_instance);
|
||||
if (pObject) {
|
||||
if (value <= BACNET_LIGHTING_TRANSITION_PROPRIETARY_LAST) {
|
||||
if (value <= BACNET_LIGHTING_TRANSITION_PROPRIETARY_MAX) {
|
||||
pObject->Transition = value;
|
||||
status = true;
|
||||
}
|
||||
@@ -1941,7 +2041,7 @@ static bool Lighting_Output_Transition_Write(
|
||||
pObject = Keylist_Data(Object_List, object_instance);
|
||||
if (pObject) {
|
||||
(void)priority;
|
||||
if (value < BACNET_LIGHTING_TRANSITION_PROPRIETARY_LAST) {
|
||||
if (value < BACNET_LIGHTING_TRANSITION_PROPRIETARY_MAX) {
|
||||
pObject->Transition = value;
|
||||
status = true;
|
||||
} else {
|
||||
|
||||
@@ -535,8 +535,7 @@ int Life_Safety_Point_Read_Property(BACNET_READ_PROPERTY_DATA *rpdata)
|
||||
apdu_len = encode_application_enumerated(&apdu[0], mode);
|
||||
break;
|
||||
case PROP_ACCEPTED_MODES:
|
||||
for (mode = MIN_LIFE_SAFETY_MODE; mode < MAX_LIFE_SAFETY_MODE;
|
||||
mode++) {
|
||||
for (mode = 0; mode <= LIFE_SAFETY_MODE_RESERVED_MIN; mode++) {
|
||||
len = encode_application_enumerated(&apdu[apdu_len], mode);
|
||||
apdu_len += len;
|
||||
}
|
||||
@@ -583,7 +582,7 @@ bool Life_Safety_Point_Write_Property(BACNET_WRITE_PROPERTY_DATA *wp_data)
|
||||
status = write_property_type_valid(
|
||||
wp_data, &value, BACNET_APPLICATION_TAG_ENUMERATED);
|
||||
if (status) {
|
||||
if (value.type.Enumerated <= MAX_LIFE_SAFETY_MODE) {
|
||||
if (value.type.Enumerated <= LIFE_SAFETY_MODE_PROPRIETARY_MAX) {
|
||||
Life_Safety_Point_Mode_Set(
|
||||
wp_data->object_instance,
|
||||
(BACNET_LIFE_SAFETY_MODE)value.type.Enumerated);
|
||||
|
||||
@@ -705,8 +705,7 @@ int Life_Safety_Zone_Read_Property(BACNET_READ_PROPERTY_DATA *rpdata)
|
||||
apdu_len = encode_application_enumerated(&apdu[0], mode);
|
||||
break;
|
||||
case PROP_ACCEPTED_MODES:
|
||||
for (mode = MIN_LIFE_SAFETY_MODE; mode < MAX_LIFE_SAFETY_MODE;
|
||||
mode++) {
|
||||
for (mode = 0; mode < LIFE_SAFETY_MODE_RESERVED_MIN; mode++) {
|
||||
len = encode_application_enumerated(&apdu[apdu_len], mode);
|
||||
apdu_len += len;
|
||||
}
|
||||
@@ -760,7 +759,7 @@ bool Life_Safety_Zone_Write_Property(BACNET_WRITE_PROPERTY_DATA *wp_data)
|
||||
status = write_property_type_valid(
|
||||
wp_data, &value, BACNET_APPLICATION_TAG_ENUMERATED);
|
||||
if (status) {
|
||||
if (value.type.Enumerated <= MAX_LIFE_SAFETY_MODE) {
|
||||
if (value.type.Enumerated <= LIFE_SAFETY_MODE_PROPRIETARY_MAX) {
|
||||
Life_Safety_Zone_Mode_Set(
|
||||
wp_data->object_instance,
|
||||
(BACNET_LIFE_SAFETY_MODE)value.type.Enumerated);
|
||||
|
||||
@@ -171,7 +171,7 @@ int lighting_command_decode(
|
||||
&apdu[apdu_len], apdu_size - apdu_len, 0, &enum_value);
|
||||
if (len > 0) {
|
||||
apdu_len += len;
|
||||
if (unsigned_value <= BACNET_LIGHTS_PROPRIETARY_LAST) {
|
||||
if (unsigned_value <= BACNET_LIGHTS_PROPRIETARY_MAX) {
|
||||
operation = (BACNET_LIGHTING_OPERATION)enum_value;
|
||||
if (data) {
|
||||
data->operation = operation;
|
||||
|
||||
@@ -52,13 +52,6 @@ typedef struct BACnet_Read_Range_Data {
|
||||
/**< For info functionality indicates array of lists if set */
|
||||
#define RR_ARRAY_OF_LISTS 16
|
||||
|
||||
/** Bit String Enumerations */
|
||||
typedef enum {
|
||||
RESULT_FLAG_FIRST_ITEM = 0,
|
||||
RESULT_FLAG_LAST_ITEM = 1,
|
||||
RESULT_FLAG_MORE_ITEMS = 2
|
||||
} BACNET_RESULT_FLAGS;
|
||||
|
||||
/** Defines for ReadRange packet overheads to allow us to determine how
|
||||
* much space is left for actual payload:
|
||||
*
|
||||
|
||||
@@ -143,7 +143,7 @@ static void testAbortError(void)
|
||||
BACNET_ABORT_REASON abort_code;
|
||||
BACNET_ABORT_REASON test_abort_code;
|
||||
|
||||
for (i = 0; i < MAX_BACNET_ABORT_REASON; i++) {
|
||||
for (i = 0; i < ABORT_REASON_RESERVED_MIN; i++) {
|
||||
abort_code = (BACNET_ABORT_REASON)i;
|
||||
error_code = abort_convert_to_error_code(abort_code);
|
||||
test_abort_code = abort_convert_error_code(error_code);
|
||||
|
||||
Reference in New Issue
Block a user