608 lines
26 KiB
C
608 lines
26 KiB
C
/*####COPYRIGHTBEGIN####
|
|
-------------------------------------------
|
|
Copyright (C) 2005 Steve Karg
|
|
|
|
This program is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU General Public License
|
|
as published by the Free Software Foundation; either version 2
|
|
of the License, or (at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to:
|
|
The Free Software Foundation, Inc.
|
|
59 Temple Place - Suite 330
|
|
Boston, MA 02111-1307, USA.
|
|
|
|
As a special exception, if other files instantiate templates or
|
|
use macros or inline functions from this file, or you compile
|
|
this file and link it with other works to produce a work based
|
|
on this file, this file does not by itself cause the resulting
|
|
work to be covered by the GNU General Public License. However
|
|
the source code for this file must still be made available in
|
|
accordance with section (3) of the GNU General Public License.
|
|
|
|
This exception does not invalidate any other reasons why a work
|
|
based on this file might be covered by the GNU General Public
|
|
License.
|
|
-------------------------------------------
|
|
####COPYRIGHTEND####*/
|
|
|
|
#include "indtext.h"
|
|
#include "bacenum.h"
|
|
|
|
static const char *ASHRAE_Reserved_String = "Reserved for Use by ASHRAE";
|
|
static const char *Vendor_Proprietary_String = "Vendor Proprietary Value";
|
|
|
|
INDTEXT_DATA bacnet_confirmed_service_names[] = {
|
|
{ SERVICE_CONFIRMED_ACKNOWLEDGE_ALARM, "Acknowledge-Alarm" },
|
|
{ SERVICE_CONFIRMED_COV_NOTIFICATION, "COV-Notification" },
|
|
{ SERVICE_CONFIRMED_EVENT_NOTIFICATION, "Event-Notification" },
|
|
{ SERVICE_CONFIRMED_GET_ALARM_SUMMARY, "Get-Alarm-Summary" },
|
|
{ SERVICE_CONFIRMED_GET_ENROLLMENT_SUMMARY, "Get-Enrollment-Summary" },
|
|
{ SERVICE_CONFIRMED_SUBSCRIBE_COV, "Subscribe-COV" },
|
|
{ SERVICE_CONFIRMED_ATOMIC_READ_FILE, "Atomic-Read-File" },
|
|
{ SERVICE_CONFIRMED_ATOMIC_WRITE_FILE, "Atomic-Write-File" },
|
|
{ SERVICE_CONFIRMED_ADD_LIST_ELEMENT, "Add-List-Element" },
|
|
{ SERVICE_CONFIRMED_REMOVE_LIST_ELEMENT, "Remove-List-Element" },
|
|
{ SERVICE_CONFIRMED_CREATE_OBJECT, "Create-Object" },
|
|
{ SERVICE_CONFIRMED_DELETE_OBJECT, "Delete-Object" },
|
|
{ SERVICE_CONFIRMED_READ_PROPERTY, "Read-Property" },
|
|
{ SERVICE_CONFIRMED_READ_PROPERTY_CONDITIONAL, "Read-Property-Conditional" },
|
|
{ SERVICE_CONFIRMED_READ_PROPERTY_MULTIPLE, "Read-Property-Multiple" },
|
|
{ SERVICE_CONFIRMED_WRITE_PROPERTY, "Write-Property" },
|
|
{ SERVICE_CONFIRMED_WRITE_PROPERTY_MULTIPLE, "Write-Property-Multiple" },
|
|
{ SERVICE_CONFIRMED_DEVICE_COMMUNICATION_CONTROL, "Device-Communication-Control" },
|
|
{ SERVICE_CONFIRMED_PRIVATE_TRANSFER, "Private-Transfer" },
|
|
{ SERVICE_CONFIRMED_TEXT_MESSAGE, "Text-Message" },
|
|
{ SERVICE_CONFIRMED_REINITIALIZE_DEVICE, "Reinitialize-Device" },
|
|
{ SERVICE_CONFIRMED_VT_OPEN, "VT-Open" },
|
|
{ SERVICE_CONFIRMED_VT_CLOSE, "VT-Close" },
|
|
{ SERVICE_CONFIRMED_VT_DATA, "VT-Data" },
|
|
{ SERVICE_CONFIRMED_AUTHENTICATE, "Authenticate" },
|
|
{ SERVICE_CONFIRMED_REQUEST_KEY, "Request-Key" },
|
|
{ SERVICE_CONFIRMED_READ_RANGE, "Read-Range" },
|
|
{ SERVICE_CONFIRMED_LIFE_SAFETY_OPERATION, "Life-Safety_Operation" },
|
|
{ SERVICE_CONFIRMED_SUBSCRIBE_COV_PROPERTY, "Subscribe-COV-Property" },
|
|
{ SERVICE_CONFIRMED_GET_EVENT_INFORMATION, "Get-Event-Information" },
|
|
{ 0, NULL }
|
|
};
|
|
|
|
const char *bactext_confirmed_service_name(int index)
|
|
{
|
|
return indtext_by_index_default(
|
|
bacnet_confirmed_service_names,
|
|
index,ASHRAE_Reserved_String);
|
|
}
|
|
|
|
INDTEXT_DATA bacnet_unconfirmed_service_names[] = {
|
|
{ SERVICE_UNCONFIRMED_I_AM, "I-Am" },
|
|
{ SERVICE_UNCONFIRMED_I_HAVE, "I-Have" },
|
|
{ SERVICE_UNCONFIRMED_COV_NOTIFICATION, "COV-Notification" },
|
|
{ SERVICE_UNCONFIRMED_EVENT_NOTIFICATION, "Event-Notification" },
|
|
{ SERVICE_UNCONFIRMED_PRIVATE_TRANSFER, "Private-Transfer" },
|
|
{ SERVICE_UNCONFIRMED_TEXT_MESSAGE, "Text-Message" },
|
|
{ SERVICE_UNCONFIRMED_TIME_SYNCHRONIZATION, "Time-Synchronization" },
|
|
{ SERVICE_UNCONFIRMED_WHO_HAS, "Who-Has" },
|
|
{ SERVICE_UNCONFIRMED_WHO_IS, "Who-Is" },
|
|
{ SERVICE_UNCONFIRMED_UTC_TIME_SYNCHRONIZATION, "UTC-Time-Synchronization" },
|
|
{ 0, NULL }
|
|
};
|
|
|
|
const char *bactext_unconfirmed_service_name(int index)
|
|
{
|
|
return indtext_by_index_default(
|
|
bacnet_unconfirmed_service_names,
|
|
index,ASHRAE_Reserved_String);
|
|
}
|
|
|
|
INDTEXT_DATA bacnet_application_tag_names[] = {
|
|
{ BACNET_APPLICATION_TAG_NULL, "Null" },
|
|
{ BACNET_APPLICATION_TAG_BOOLEAN, "Boolean" },
|
|
{ BACNET_APPLICATION_TAG_UNSIGNED_INT, "Unsigned Int" },
|
|
{ BACNET_APPLICATION_TAG_SIGNED_INT, "Signed Int" },
|
|
{ BACNET_APPLICATION_TAG_REAL, "Real" },
|
|
{ BACNET_APPLICATION_TAG_DOUBLE, "Double" },
|
|
{ BACNET_APPLICATION_TAG_OCTET_STRING, "Octet String" },
|
|
{ BACNET_APPLICATION_TAG_CHARACTER_STRING, "Character String" },
|
|
{ BACNET_APPLICATION_TAG_BIT_STRING, "Bit String" },
|
|
{ BACNET_APPLICATION_TAG_ENUMERATED, "Enumerated" },
|
|
{ BACNET_APPLICATION_TAG_DATE, "Date" },
|
|
{ BACNET_APPLICATION_TAG_TIME, "Time" },
|
|
{ BACNET_APPLICATION_TAG_OBJECT_ID, "Object ID" },
|
|
{ BACNET_APPLICATION_TAG_RESERVED1, "Reserved 1" },
|
|
{ BACNET_APPLICATION_TAG_RESERVED2, "Reserved 2" },
|
|
{ BACNET_APPLICATION_TAG_RESERVED3, "Reserved 3" },
|
|
{ 0, NULL }
|
|
};
|
|
|
|
const char *bactext_application_tag_name(int index)
|
|
{
|
|
return indtext_by_index_default(
|
|
bacnet_application_tag_names,
|
|
index,ASHRAE_Reserved_String);
|
|
}
|
|
|
|
INDTEXT_DATA bacnet_object_type_names[] = {
|
|
{ OBJECT_ANALOG_INPUT, "Analog Input" },
|
|
{ OBJECT_ANALOG_OUTPUT, "Analog Output" },
|
|
{ OBJECT_ANALOG_VALUE, "Analog Value" },
|
|
{ OBJECT_BINARY_INPUT, "Binary Input" },
|
|
{ OBJECT_BINARY_OUTPUT, "Binary Output" },
|
|
{ OBJECT_BINARY_VALUE, "Binary Value" },
|
|
{ OBJECT_CALENDAR, "Calendar" },
|
|
{ OBJECT_COMMAND, "Command" },
|
|
{ OBJECT_DEVICE, "Device" },
|
|
{ OBJECT_EVENT_ENROLLMENT, "Event Enrollment" },
|
|
{ OBJECT_FILE, "File" },
|
|
{ OBJECT_GROUP, "Group" },
|
|
{ OBJECT_LOOP, "Loop" },
|
|
{ OBJECT_MULTI_STATE_INPUT, "Multi-State Input" },
|
|
{ OBJECT_MULTI_STATE_OUTPUT, "Multi-State Output" },
|
|
{ OBJECT_NOTIFICATION_CLASS, "Notification Class" },
|
|
{ OBJECT_PROGRAM, "Program" },
|
|
{ OBJECT_SCHEDULE, "Schedule" },
|
|
{ OBJECT_AVERAGING, "Averaging" },
|
|
{ OBJECT_MULTI_STATE_VALUE, "Multi-State Value" },
|
|
{ OBJECT_TRENDLOG, "Trendlog" },
|
|
{ OBJECT_LIFE_SAFETY_POINT, "Life Safety Point" },
|
|
{ OBJECT_LIFE_SAFETY_ZONE, "Life Safety Zone" },
|
|
{ OBJECT_ACCUMULATOR, "Accumulator" },
|
|
{ OBJECT_PULSE_CONVERTER, "Pulse-Converter" },
|
|
{ 0, NULL }
|
|
/* Enumerated values 0-127 are reserved for definition by ASHRAE.
|
|
Enumerated values 128-1023 may be used by others subject to
|
|
the procedures and constraints described in Clause 23. */
|
|
};
|
|
|
|
const char *bactext_object_type_name(int index)
|
|
{
|
|
return indtext_by_index_split_default(
|
|
bacnet_object_type_names,
|
|
index,
|
|
128,
|
|
ASHRAE_Reserved_String,
|
|
Vendor_Proprietary_String);
|
|
}
|
|
|
|
INDTEXT_DATA bacnet_property_names[] = {
|
|
/* FIXME: use the enumerations from bacenum.h */
|
|
{ PROP_ACKED_TRANSITIONS, "acked-transitions"},
|
|
{ PROP_ACK_REQUIRED, "ack-required"},
|
|
{ PROP_ACTION, "action"},
|
|
{ PROP_ACTION_TEXT, "action-text"},
|
|
{ PROP_ACTIVE_TEXT, "active-text"},
|
|
{ PROP_ACTIVE_VT_SESSIONS, "active-vt-sessions"},
|
|
{ PROP_ALARM_VALUE, "alarm-value"},
|
|
{ PROP_ALARM_VALUES, "alarm-values"},
|
|
{ PROP_ALL, "all"},
|
|
{ PROP_ALL_WRITES_SUCCESSFUL, "all-writes-successful"},
|
|
{ PROP_APDU_SEGMENT_TIMEOUT, "apdu-segment-timeout"},
|
|
{ PROP_APDU_TIMEOUT, "apdu-timeout"},
|
|
{ PROP_APPLICATION_SOFTWARE_VERSION, "application-software-version"},
|
|
{ PROP_ARCHIVE, "archive"},
|
|
{ PROP_BIAS, "bias"},
|
|
{ PROP_CHANGE_OF_STATE_COUNT, "change-of-state-count"},
|
|
{ PROP_CHANGE_OF_STATE_TIME, "change-of-state-time"},
|
|
{ PROP_NOTIFICATION_CLASS, "notification-class"},
|
|
{ PROP_BLANK_1, "(deleted in 135-2001)"},
|
|
{ PROP_CONTROLLED_VARIABLE_REFERENCE, "controlled-variable-reference"},
|
|
{ PROP_CONTROLLED_VARIABLE_UNITS, "controlled-variable-units"},
|
|
{ PROP_CONTROLLED_VARIABLE_VALUE, "controlled-variable-value"},
|
|
{ PROP_COV_INCREMENT, "COV-increment"},
|
|
{ PROP_DATE_LIST, "datelist"},
|
|
{ PROP_DAYLIGHT_SAVINGS_STATUS, "daylight-savings-status"},
|
|
{ PROP_DEADBAND, "deadband"},
|
|
{ PROP_DERIVATIVE_CONSTANT, "derivative-constant"},
|
|
{ PROP_DERIVATIVE_CONSTANT_UNITS, "derivative-constant-units"},
|
|
{ PROP_DESCRIPTION, "description"},
|
|
{ PROP_DESCRIPTION_OF_HALT, "description-of-halt"},
|
|
{ PROP_DEVICE_ADDRESS_BINDING, "device-address-binding"},
|
|
{ PROP_DEVICE_TYPE, "device-type"},
|
|
{ PROP_EFFECTIVE_PERIOD, "effective-period"},
|
|
{ PROP_ELAPSED_ACTIVE_TIME, "elapsed-active-time"},
|
|
{ PROP_ERROR_LIMIT, "error-limit"},
|
|
{ PROP_EVENT_ENABLE, "event-enable"},
|
|
{ PROP_EVENT_STATE, "event-state"},
|
|
{ PROP_EVENT_TYPE, "event-type"},
|
|
{ PROP_EXCEPTION_SCHEDULE, "exception-schedule"},
|
|
{ PROP_FAULT_VALUES, "fault-values"},
|
|
{ PROP_FEEDBACK_VALUE, "feedback-value"},
|
|
{ PROP_FILE_ACCESS_METHOD, "file-access-method"},
|
|
{ PROP_FILE_SIZE, "file-size"},
|
|
{ PROP_FILE_TYPE, "file-type"},
|
|
{ PROP_FIRMWARE_REVISION, "firmware-version"},
|
|
{ PROP_HIGH_LIMIT, "high-limit"},
|
|
{ PROP_INACTIVE_TEXT, "inactive-text"},
|
|
{ PROP_IN_PROCESS, "in-process"},
|
|
{ PROP_INSTANCE_OF, "instance-of"},
|
|
{ PROP_INTEGRAL_CONSTANT, "integral-constant"},
|
|
{ PROP_INTEGRAL_CONSTANT_UNITS, "integral-constant-units"},
|
|
{ PROP_ISSUE_CONFIRMED_NOTIFICATIONS, "issue-confirmednotifications"},
|
|
{ PROP_LIMIT_ENABLE, "limit-enable"},
|
|
{ PROP_LIST_OF_GROUP_MEMBERS, "list-of-group-members"},
|
|
{ PROP_LIST_OF_OBJECT_PROPERTY_REFERENCES, "list-of-object-property-references"},
|
|
{ PROP_LIST_OF_SESSION_KEYS, "list-of-session-keys"},
|
|
{ PROP_LOCAL_DATE, "local-date"},
|
|
{ PROP_LOCAL_TIME, "local-time"},
|
|
{ PROP_LOCATION, "location"},
|
|
{ PROP_LOW_LIMIT, "low-limit"},
|
|
{ PROP_MANIPULATED_VARIABLE_REFERENCE, "manipulated-variable-reference"},
|
|
{ PROP_MAXIMUM_OUTPUT, "maximum-output"},
|
|
{ PROP_MAX_APDU_LENGTH_ACCEPTED, "max-apdu-length-accepted"},
|
|
{ PROP_MAX_INFO_FRAMES, "max-info-frames"},
|
|
{ PROP_MAX_MASTER, "max-master"},
|
|
{ PROP_MAX_PRES_VALUE, "max-pres-value"},
|
|
{ PROP_MINIMUM_OFF_TIME, "minimum-off-time"},
|
|
{ PROP_MINIMUM_ON_TIME, "minimum-on-time"},
|
|
{ PROP_MINIMUM_OUTPUT, "minimum-output"},
|
|
{ PROP_MIN_PRES_VALUE, "min-pres-value"},
|
|
{ PROP_MODEL_NAME, "model-name"},
|
|
{ PROP_MODIFICATION_DATE, "modification-date"},
|
|
{ PROP_NOTIFY_TYPE, "notify-type"},
|
|
{ PROP_NUMBER_OF_APDU_RETRIES, "number-of-APDU-retries"},
|
|
{ PROP_NUMBER_OF_STATES, "number-of-states"},
|
|
{ PROP_OBJECT_IDENTIFIER, "object-identifier"},
|
|
{ PROP_OBJECT_LIST, "object-list"},
|
|
{ PROP_OBJECT_NAME, "object-name"},
|
|
{ PROP_OBJECT_PROPERTY_REFERENCE, "object-property-reference"},
|
|
{ PROP_OBJECT_TYPE, "object-type"},
|
|
{ PROP_OPTIONAL, "optional"},
|
|
{ PROP_OUT_OF_SERVICE, "out-of-service"},
|
|
{ PROP_OUTPUT_UNITS, "output-units"},
|
|
{ PROP_EVENT_PARAMETERS, "event-parameters"},
|
|
{ PROP_POLARITY, "polarity"},
|
|
{ PROP_PRESENT_VALUE, "present-value"},
|
|
{ PROP_PRIORITY, "priority"},
|
|
{ PROP_PRIORITY_ARRAY, "priority-array"},
|
|
{ PROP_PRIORITY_FOR_WRITING, "priority-for-writing"},
|
|
{ PROP_PROCESS_IDENTIFIER, "process-identifier"},
|
|
{ PROP_PROGRAM_CHANGE, "program-change"},
|
|
{ PROP_PROGRAM_LOCATION, "program-location"},
|
|
{ PROP_PROGRAM_STATE, "program-state"},
|
|
{ PROP_PROPORTIONAL_CONSTANT, "proportional-constant"},
|
|
{ PROP_PROPORTIONAL_CONSTANT_UNITS, "proportional-constant-units"},
|
|
{ PROP_PROTOCOL_CONFORMANCE_CLASS, "protocol-conformance-class"},
|
|
{ PROP_PROTOCOL_OBJECT_TYPES_SUPPORTED, "protocol-object-types-supported"},
|
|
{ PROP_PROTOCOL_SERVICES_SUPPORTED, "protocol-services-supported"},
|
|
{ PROP_PROTOCOL_VERSION, "protocol-version"},
|
|
{ PROP_READ_ONLY, "read-only"},
|
|
{ PROP_REASON_FOR_HALT, "reason-for-halt"},
|
|
{ PROP_RECIPIENT, "recipient"},
|
|
{ PROP_RECIPIENT_LIST, "recipient-list"},
|
|
{ PROP_RELIABILITY, "reliability"},
|
|
{ PROP_RELINQUISH_DEFAULT, "relinquish-default"},
|
|
{ PROP_REQUIRED, "required"},
|
|
{ PROP_RESOLUTION, "resolution"},
|
|
{ PROP_SEGMENTATION_SUPPORTED, "segmentation-supported"},
|
|
{ PROP_SETPOINT, "setpoint"},
|
|
{ PROP_SETPOINT_REFERENCE, "setpoint-reference"},
|
|
{ PROP_STATE_TEXT, "state-text"},
|
|
{ PROP_STATUS_FLAGS, "status-flags"},
|
|
{ PROP_SYSTEM_STATUS, "system-status"},
|
|
{ PROP_TIME_DELAY, "time-delay"},
|
|
{ PROP_TIME_OF_ACTIVE_TIME_RESET, "time-of-active-time-reset"},
|
|
{ PROP_TIME_OF_STATE_COUNT_RESET, "time-of-state-count-reset"},
|
|
{ PROP_TIME_SYNCHRONIZATION_RECIPIENTS, "time-synchronization-recipients"},
|
|
{ PROP_UNITS, "units"},
|
|
{ PROP_UPDATE_INTERVAL, "update-interval"},
|
|
{ PROP_UTC_OFFSET, "utc-offset"},
|
|
{ PROP_VENDOR_IDENTIFIER, "vendor-identifier"},
|
|
{ PROP_VENDOR_NAME, "vendor-name"},
|
|
{ PROP_VT_CLASSES_SUPPORTED, "vt-classes-supported"},
|
|
{ PROP_WEEKLY_SCHEDULE, "weekly-schedule"},
|
|
{ PROP_ATTEMPTED_SAMPLES, "attempted-samples"},
|
|
{ PROP_AVERAGE_VALUE, "average-value"},
|
|
{ PROP_BUFFER_SIZE, "buffer-size"},
|
|
{ PROP_CLIENT_COV_INCREMENT, "client-cov-increment"},
|
|
{ PROP_COV_RESUBSCRIPTION_INTERVAL, "cov-resubscription-interval"},
|
|
{ PROP_CURRENT_NOTIFY_TIME, "current-notify-time"},
|
|
{ PROP_EVENT_TIME_STAMPS, "event-time-stamps"},
|
|
{ PROP_LOG_BUFFER, "log-buffer"},
|
|
{ PROP_LOG_DEVICE_OBJECT, "log-device-object-property"},
|
|
{ PROP_LOG_ENABLE, "log-enable"},
|
|
{ PROP_LOG_INTERVAL, "log-interval"},
|
|
{ PROP_MAXIMUM_VALUE, "maximum-value"},
|
|
{ PROP_MINIMUM_VALUE, "minimum-value"},
|
|
{ PROP_NOTIFICATION_THRESHOLD, "notification-threshold"},
|
|
{ PROP_PREVIOUS_NOTIFY_TIME, "previous-notify-time"},
|
|
{ PROP_PROTOCOL_REVISION, "protocol-revision"},
|
|
{ PROP_RECORDS_SINCE_NOTIFICATION, "records-since-notification"},
|
|
{ PROP_RECORD_COUNT, "record-count"},
|
|
{ PROP_START_TIME, "start-time"},
|
|
{ PROP_STOP_TIME, "stop-time"},
|
|
{ PROP_STOP_WHEN_FULL, "stop-when-full"},
|
|
{ PROP_TOTAL_RECORD_COUNT, "total-record-count"},
|
|
{ PROP_VALID_SAMPLES, "valid-samples"},
|
|
{ PROP_WINDOW_INTERVAL, "window-interval"},
|
|
{ PROP_WINDOW_SAMPLES, "window-samples"},
|
|
{ PROP_MAXIMUM_VALUE_TIMESTAMP, "maximum-value-timestamp"},
|
|
{ PROP_MINIMUM_VALUE_TIMESTAMP, "minimum-value-timestamp"},
|
|
{ PROP_VARIANCE_VALUE, "variance-value"},
|
|
{ PROP_ACTIVE_COV_SUBSCRIPTIONS, "active-cov-subscriptions"},
|
|
{ PROP_BACKUP_FAILURE_TIMEOUT, "backup-failure-timeout"},
|
|
{ PROP_CONFIGURATION_FILES, "configuration-files"},
|
|
{ PROP_DATABASE_REVISION, "database-revision"},
|
|
{ PROP_DIRECT_READING, "direct-reading"},
|
|
{ PROP_LAST_RESTORE_TIME, "last-restore-time"},
|
|
{ PROP_MAINTENANCE_REQUIRED, "maintenance-required"},
|
|
{ PROP_MEMBER_OF, "member-of"},
|
|
{ PROP_MODE, "mode"},
|
|
{ PROP_OPERATION_EXPECTED, "operation-expected"},
|
|
{ PROP_SETTING, "setting"},
|
|
{ PROP_SILENCED, "silenced"},
|
|
{ PROP_TRACKING_VALUE, "tracking-value"},
|
|
{ PROP_ZONE_MEMBERS, "zone-members"},
|
|
{ PROP_LIFE_SAFETY_ALARM_VALUES, "life-safety-alarm-values"},
|
|
{ PROP_MAX_SEGMENTS_ACCEPTED, "max-segments-accepted"},
|
|
{ PROP_PROFILE_NAME, "profile-name"},
|
|
{ 0, NULL }
|
|
/* Enumerated values 0-511 are reserved for definition by ASHRAE.
|
|
Enumerated values 512-4194303 may be used by others subject to the
|
|
procedures and constraints described in Clause 23. */
|
|
};
|
|
|
|
const char *bactext_property_name(int index)
|
|
{
|
|
return indtext_by_index_split_default(
|
|
bacnet_property_names,
|
|
index,
|
|
512,
|
|
ASHRAE_Reserved_String,
|
|
Vendor_Proprietary_String);
|
|
}
|
|
|
|
INDTEXT_DATA bacnet_engineering_unit_names[] = {
|
|
{ UNITS_SQUARE_METERS , "square-meters"},
|
|
{ UNITS_SQUARE_FEET , "square-feet"},
|
|
{ UNITS_MILLIAMPERES , "milliamperes"},
|
|
{ UNITS_AMPERES, "amperes"},
|
|
{ UNITS_OHMS, "ohms"},
|
|
{ UNITS_VOLTS, "volts"},
|
|
{ UNITS_KILOVOLTS, "kilovolts"},
|
|
{ UNITS_MEGAVOLTS, "megavolts"},
|
|
{ UNITS_VOLT_AMPERES, "volt-amperes"},
|
|
{ UNITS_KILOVOLT_AMPERES, "kilovolt-amperes"},
|
|
{ UNITS_MEGAVOLT_AMPERES, "megavolt-amperes"},
|
|
{ UNITS_VOLT_AMPERES_REACTIVE, "volt-amperes-reactive"},
|
|
{ UNITS_KILOVOLT_AMPERES_REACTIVE, "kilovolt-amperes-reactive"},
|
|
{ UNITS_MEGAVOLT_AMPERES_REACTIVE, "megavolt-amperes-reactive"},
|
|
{ UNITS_DEGREES_PHASE, "degrees-phase"},
|
|
{ UNITS_POWER_FACTOR, "power-factor"},
|
|
{ UNITS_JOULES, "joules"},
|
|
{ UNITS_KILOJOULES, "kilojoules"},
|
|
{ UNITS_WATT_HOURS, "watt-hours"},
|
|
{ UNITS_KILOWATT_HOURS, "kilowatt-hours"},
|
|
{ UNITS_BTUS, "btus"},
|
|
{ UNITS_THERMS, "therms"},
|
|
{ UNITS_TON_HOURS, "ton-hours"},
|
|
{ UNITS_JOULES_PER_KILOGRAM_DRY_AIR, "joules-per-kilogram-dry-air"},
|
|
{ UNITS_BTUS_PER_POUND_DRY_AIR, "btus-per-pound-dry-air"},
|
|
{ UNITS_CYCLES_PER_HOUR, "cycles-per-hour"},
|
|
{ UNITS_CYCLES_PER_MINUTE, "cycles-per-minute"},
|
|
{ UNITS_HERTZ, "hertz"},
|
|
{ UNITS_GRAMS_OF_WATER_PER_KILOGRAM_DRY_AIR, "grams-of-water-per-kilogram-dry-air"},
|
|
{ UNITS_PERCENT_RELATIVE_HUMIDITY, "percent-relative-humidity"},
|
|
{ UNITS_MILLIMETERS, "millimeters"},
|
|
{ UNITS_METERS, "meters"},
|
|
{ UNITS_INCHES, "inches"},
|
|
{ UNITS_FEET, "feet"},
|
|
{ UNITS_WATTS_PER_SQUARE_FOOT, "watts-per-square-foot"},
|
|
{ UNITS_WATTS_PER_SQUARE_METER, "watts-per-square-meter"},
|
|
{ UNITS_LUMENS, "lumens"},
|
|
{ UNITS_LUXES, "luxes"},
|
|
{ UNITS_FOOT_CANDLES, "foot-candles"},
|
|
{ UNITS_KILOGRAMS, "kilograms"},
|
|
{ UNITS_POUNDS_MASS, "pounds-mass"},
|
|
{ UNITS_TONS, "tons"},
|
|
{ UNITS_KILOGRAMS_PER_SECOND, "kilograms-per-second"},
|
|
{ UNITS_KILOGRAMS_PER_MINUTE, "kilograms-per-minute"},
|
|
{ UNITS_KILOGRAMS_PER_HOUR, "kilograms-per-hour"},
|
|
{ UNITS_POUNDS_MASS_PER_MINUTE, "pounds-mass-per-minute"},
|
|
{ UNITS_POUNDS_MASS_PER_HOUR, "pounds-mass-per-hour"},
|
|
{ UNITS_WATTS, "watts"},
|
|
{ UNITS_KILOWATTS, "kilowatts"},
|
|
{ UNITS_MEGAWATTS, "megawatts"},
|
|
{ UNITS_BTUS_PER_HOUR, "btus-per-hour"},
|
|
{ UNITS_HORSEPOWER, "horsepower"},
|
|
{ UNITS_TONS_REFRIGERATION, "tons-refrigeration"},
|
|
{ UNITS_PASCALS, "pascals"},
|
|
{ UNITS_KILOPASCALS, "kilopascals"},
|
|
{ UNITS_BARS, "bars"},
|
|
{ UNITS_POUNDS_FORCE_PER_SQUARE_INCH, "pounds-force-per-square-inch"},
|
|
{ UNITS_CENTIMETERS_OF_WATER, "centimeters-of-water"},
|
|
{ UNITS_INCHES_OF_WATER, "inches-of-water"},
|
|
{ UNITS_MILLIMETERS_OF_MERCURY, "millimeters-of-mercury"},
|
|
{ UNITS_CENTIMETERS_OF_MERCURY, "centimeters-of-mercury"},
|
|
{ UNITS_INCHES_OF_MERCURY, "inches-of-mercury"},
|
|
{ UNITS_DEGREES_CELSIUS, "degrees-celsius"},
|
|
{ UNITS_DEGREES_KELVIN, "degrees-kelvin"},
|
|
{ UNITS_DEGREES_FAHRENHEIT, "degrees-fahrenheit"},
|
|
{ UNITS_DEGREE_DAYS_CELSIUS, "degree-days-celsius"},
|
|
{ UNITS_DEGREE_DAYS_FAHRENHEIT, "degree-days-fahrenheit"},
|
|
{ UNITS_YEARS, "years"},
|
|
{ UNITS_MONTHS, "months"},
|
|
{ UNITS_WEEKS, "weeks"},
|
|
{ UNITS_DAYS, "days"},
|
|
{ UNITS_HOURS, "hours"},
|
|
{ UNITS_MINUTES, "minutes"},
|
|
{ UNITS_SECONDS, "secondS"},
|
|
{ UNITS_METERS_PER_SECOND, "meters-per-second"},
|
|
{ UNITS_KILOMETERS_PER_HOUR, "kilometers-per-hour"},
|
|
{ UNITS_FEET_PER_SECOND, "feet-per-second"},
|
|
{ UNITS_FEET_PER_MINUTE, "feet-per-minute"},
|
|
{ UNITS_MILES_PER_HOUR, "miles-per-hour"},
|
|
{ UNITS_CUBIC_FEET, "cubic-feet"},
|
|
{ UNITS_CUBIC_METERS, "cubic-meters"},
|
|
{ UNITS_IMPERIAL_GALLONS, "imperial-gallons"},
|
|
{ UNITS_LITERS, "liters"},
|
|
{ UNITS_US_GALLONS, "us-gallons"},
|
|
{ UNITS_CUBIC_FEET_PER_MINUTE, "cubic-feet-per-minute"},
|
|
{ UNITS_CUBIC_METERS_PER_SECOND, "cubic-meters-per-second"},
|
|
{ UNITS_IMPERIAL_GALLONS_PER_MINUTE, "imperial-gallons-per-minute"},
|
|
{ UNITS_LITERS_PER_SECOND, "liters-per-second"},
|
|
{ UNITS_LITERS_PER_MINUTE, "liters-per-minute"},
|
|
{ UNITS_US_GALLONS_PER_MINUTE, "us-gallons-per-minute"},
|
|
{ UNITS_DEGREES_ANGULAR, "degrees-angular"},
|
|
{ UNITS_DEGREES_CELSIUS_PER_HOUR, "degrees-celsius-per-hour"},
|
|
{ UNITS_DEGREES_CELSIUS_PER_MINUTE, "degrees-celsius-per-minute"},
|
|
{ UNITS_DEGREES_FAHRENHEIT_PER_HOUR, "degrees-fahrenheit-per-hour"},
|
|
{ UNITS_DEGREES_FAHRENHEIT_PER_MINUTE, "degrees-fahrenheit-per-minute"},
|
|
{ UNITS_NO_UNITS, "no-units"},
|
|
{ UNITS_PARTS_PER_MILLION, "parts-per-million"},
|
|
{ UNITS_PARTS_PER_BILLION, "parts-per-billion"},
|
|
{ UNITS_PERCENT, "percent"},
|
|
{ UNITS_PERCENT_PER_SECOND, "percent-per-second"},
|
|
{ UNITS_PER_MINUTE, "per-minute"},
|
|
{ UNITS_PER_SECOND, "per-second"},
|
|
{ UNITS_PSI_PER_DEGREE_FAHRENHEIT, "psi-per-degree-fahrenheit"},
|
|
{ UNITS_RADIANS, "radians"},
|
|
{ UNITS_REVOLUTIONS_PER_MINUTE, "revolutions-per-minute"},
|
|
{ UNITS_CURRENCY1, "currency1"},
|
|
{ UNITS_CURRENCY2, "currency2"},
|
|
{ UNITS_CURRENCY3, "currency3"},
|
|
{ UNITS_CURRENCY4, "currency4"},
|
|
{ UNITS_CURRENCY5, "currency5"},
|
|
{ UNITS_CURRENCY6, "currency6"},
|
|
{ UNITS_CURRENCY7, "currency7"},
|
|
{ UNITS_CURRENCY8, "currency8"},
|
|
{ UNITS_CURRENCY9, "currency9"},
|
|
{ UNITS_CURRENCY10, "currency10"},
|
|
{ UNITS_SQUARE_INCHES, "square-inches"},
|
|
{ UNITS_SQUARE_CENTIMETERS, "square-centimeters"},
|
|
{ UNITS_BTUS_PER_POUND, "btus_per-pound"},
|
|
{ UNITS_CENTIMETERS, "centimeters"},
|
|
{ UNITS_POUNDS_MASS_PER_SECOND, "pounds-mass-per-second"},
|
|
{ UNITS_DELTA_DEGREES_FAHRENHEIT, "delta-degrees-fahrenheit"},
|
|
{ UNITS_DELTA_DEGREES_KELVIN, "delta-degrees-kelvin"},
|
|
{ UNITS_KILOHMS, "kilohms"},
|
|
{ UNITS_MEGOHMS, "megohms"},
|
|
{ UNITS_MILLIVOLTS, "millivolts"},
|
|
{ UNITS_KILOJOULES_PER_KILOGRAM, "kilojoules-per-kilogram"},
|
|
{ UNITS_MEGAJOULES, "megajoules"},
|
|
{ UNITS_JOULES_PER_DEGREE_KELVIN, "joules-per-degree-kelvin"},
|
|
{ UNITS_JOULES_PER_KILOGRAM_DEGREE_KELVIN, "joules-per-kilogram-degree-kelvin"},
|
|
{ UNITS_KILOHERTZ, "kilohertz"},
|
|
{ UNITS_MEGAHERTZ, "megahertz"},
|
|
{ UNITS_PER_HOUR, "per-hour"},
|
|
{ UNITS_MILLIWATTS, "milliwatts"},
|
|
{ UNITS_HECTOPASCALS, "hectopascals"},
|
|
{ UNITS_MILLIBARS, "millibars"},
|
|
{ UNITS_CUBIC_METERS_PER_HOUR, "cubic-meters-per-hour"},
|
|
{ UNITS_LITERS_PER_HOUR, "liters-per-hour"},
|
|
{ UNITS_KILOWATT_HOURS_PER_SQUARE_METER, "kilowatt-hours-per-square-meter"},
|
|
{ UNITS_KILOWATT_HOURS_PER_SQUARE_FOOT, "kilowatt-hours-per-square-foot"},
|
|
{ UNITS_MEGAJOULES_PER_SQUARE_METER, "megajoules-per-square-meter"},
|
|
{ UNITS_MEGAJOULES_PER_SQUARE_FOOT, "megajoules-per-square-foot"},
|
|
{ UNITS_CUBIC_FEET_PER_SECOND, "cubic-feet-per-second"},
|
|
{ UNITS_WATTS_PER_SQUARE_METER_DEGREE_KELVIN, "watts-per-square-meter-degree-kelvin"},
|
|
{ UNITS_PERCENT_OBSCURATION_PER_FOOT, "percent-obscuration-per-foot"},
|
|
{ UNITS_PERCENT_OBSCURATION_PER_METER, "percent-obscuration-per-meter"},
|
|
{ UNITS_MILLIOHMS, "milliohms"},
|
|
{ UNITS_MEGAWATT_HOURS, "megawatt-hours"},
|
|
{ UNITS_KILO_BTUS, "kilo-btus"},
|
|
{ UNITS_MEGA_BTUS, "mega-btus"},
|
|
{ UNITS_KILOJOULES_PER_KILOGRAM_DRY_AIR, "kilojoules-per-kilogram-dry-air"},
|
|
{ UNITS_MEGAJOULES_PER_KILOGRAM_DRY_AIR, "megajoules-per-kilogram-dry-air"},
|
|
{ UNITS_KILOJOULES_PER_DEGREE_KELVIN, "kilojoules-per-degree-Kelvin"},
|
|
{ UNITS_MEGAJOULES_PER_DEGREE_KELVIN, "megajoules-per-degree-Kelvin"},
|
|
{ UNITS_NEWTON, "newton"},
|
|
{ UNITS_GRAMS_PER_SECOND, "grams-per-second"},
|
|
{ UNITS_GRAMS_PER_MINUTE, "grams-per-minute"},
|
|
{ UNITS_TONS_PER_HOUR, "tons-per-hour"},
|
|
{ UNITS_KILO_BTUS_PER_HOUR, "kilo-btus-per-hour"},
|
|
{ UNITS_HUNDREDTHS_SECONDS, "hundredths-seconds"},
|
|
{ UNITS_MILLISECONDS, "milliseconds"},
|
|
{ UNITS_NEWTON_METERS, "newton-meters"},
|
|
{ UNITS_MILLIMETERS_PER_SECOND, "millimeters-per-second"},
|
|
{ UNITS_MILLIMETERS_PER_MINUTE, "millimeters-per-minute"},
|
|
{ UNITS_METERS_PER_MINUTE, "meters-per-minute"},
|
|
{ UNITS_METERS_PER_HOUR, "meters-per-hour"},
|
|
{ UNITS_CUBIC_METERS_PER_MINUTE, "cubic-meters-per-minute"},
|
|
{ UNITS_METERS_PER_SECOND_PER_SECOND, "meters-per-second-per-second"},
|
|
{ UNITS_AMPERES_PER_METER, "amperes-per-meter"},
|
|
{ UNITS_AMPERES_PER_SQUARE_METER, "amperes-per-square-meter"},
|
|
{ UNITS_AMPERE_SQUARE_METERS, "ampere-square-meters"},
|
|
{ UNITS_FARADS, "farads"},
|
|
{ UNITS_HENRYS, "henrys"},
|
|
{ UNITS_OHM_METERS, "ohm-meters"},
|
|
{ UNITS_SIEMENS, "siemens"},
|
|
{ UNITS_SIEMENS_PER_METER, "siemens-per-meter"},
|
|
{ UNITS_TESLAS, "teslas"},
|
|
{ UNITS_VOLTS_PER_DEGREE_KELVIN, "volts-per-degree-Kelvin"},
|
|
{ UNITS_VOLTS_PER_METER, "volts-per-meter"},
|
|
{ UNITS_WEBERS, "webers"},
|
|
{ UNITS_CANDELAS, "candelas"},
|
|
{ UNITS_CANDELAS_PER_SQUARE_METER, "candelas-per-square-meter"},
|
|
{ UNITS_DEGREES_KELVIN_PER_HOUR, "degrees-Kelvin-per-hour"},
|
|
{ UNITS_DEGREES_KELVIN_PER_MINUTE, "degrees-Kelvin-per-minute"},
|
|
{ UNITS_JOULE_SECONDS, "joule-seconds"},
|
|
{ UNITS_RADIANS_PER_SECOND, "radians-per-second"},
|
|
{ UNITS_SQUARE_METERS_PER_NEWTON, "square-meters-per-Newton"},
|
|
{ UNITS_KILOGRAMS_PER_CUBIC_METER, "kilograms-per-cubic-meter"},
|
|
{ UNITS_NEWTON_SECONDS, "newton-seconds"},
|
|
{ UNITS_NEWTONS_PER_METER, "newtons-per-meter"},
|
|
{ UNITS_WATTS_PER_METER_PER_DEGREE_KELVIN, "watts-per-meter-per-degree-Kelvin"},
|
|
{ 0, NULL}
|
|
/* 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. */
|
|
};
|
|
|
|
const char *bactext_engineering_unit_name(int index)
|
|
{
|
|
return indtext_by_index_split_default(
|
|
bacnet_engineering_unit_names,
|
|
index,
|
|
256,
|
|
ASHRAE_Reserved_String,
|
|
Vendor_Proprietary_String);
|
|
}
|
|
|
|
INDTEXT_DATA bacnet_reject_reason_names[] = {
|
|
{REJECT_REASON_OTHER, "Other"},
|
|
{REJECT_REASON_BUFFER_OVERFLOW, "Buffer Overflow"},
|
|
{REJECT_REASON_INCONSISTENT_PARAMETERS, "Inconsistent Parameters"},
|
|
{REJECT_REASON_INVALID_PARAMETER_DATA_TYPE, "Invalid Parameter Data Type"},
|
|
{REJECT_REASON_INVALID_TAG, "Invalid Tag"},
|
|
{REJECT_REASON_MISSING_REQUIRED_PARAMETER, "Missing Required Parameter"},
|
|
{REJECT_REASON_PARAMETER_OUT_OF_RANGE, "Parameter Out of Range"},
|
|
{REJECT_REASON_TOO_MANY_ARGUMENTS, "Too Many Arguments"},
|
|
{REJECT_REASON_UNDEFINED_ENUMERATION, "Undefined Enumeration"},
|
|
{REJECT_REASON_UNRECOGNIZED_SERVICE, "Unrecognized Service"},
|
|
{0,NULL}
|
|
};
|
|
|
|
const char *bactext_reject_reason_name(int index)
|
|
{
|
|
return indtext_by_index_split_default(
|
|
bacnet_reject_reason_names,
|
|
index,
|
|
FIRST_PROPRIETARY_REJECT_REASON,
|
|
ASHRAE_Reserved_String,
|
|
Vendor_Proprietary_String);
|
|
}
|
|
|
|
INDTEXT_DATA bacnet_abort_reason_names[] = {
|
|
{ ABORT_REASON_OTHER, "Other"},
|
|
{ ABORT_REASON_BUFFER_OVERFLOW, "Buffer Overflow"},
|
|
{ ABORT_REASON_INVALID_APDU_IN_THIS_STATE, "Invalid APDU in this State"},
|
|
{ ABORT_REASON_PREEMPTED_BY_HIGHER_PRIORITY_TASK, "Preempted by Higher Priority Task"},
|
|
{ ABORT_REASON_SEGMENTATION_NOT_SUPPORTED, "Segmentation Not Supported"},
|
|
{0,NULL}
|
|
};
|
|
|
|
const char *bactext_abort_reason_name(int index)
|
|
{
|
|
return indtext_by_index_split_default(
|
|
bacnet_abort_reason_names,
|
|
index,
|
|
FIRST_PROPRIETARY_ABORT_REASON,
|
|
ASHRAE_Reserved_String,
|
|
Vendor_Proprietary_String);
|
|
}
|