Corrected the Object Names for 37 and 38 (and friendlier text now).

In bacepics, now counts errors and displays error count at the end (if any).
Always prints out the Device Address Binding as a '?' if it is Null.
This commit is contained in:
tbrennan3
2010-06-01 21:21:20 +00:00
parent 44da26484d
commit 15f8e6741d
3 changed files with 45 additions and 31 deletions
+14
View File
@@ -76,6 +76,7 @@ static bool Provided_Targ_MAC = false;
static bool Error_Detected = false;
static uint16_t Last_Error_Class = 0;
static uint16_t Last_Error_Code = 0;
static uint16_t Error_Count = 0; /* Counts errors we couldn't get around */
static bool Has_RPM = true; /* Assume device can do RPM, to start */
static EPICS_STATES myState = INITIAL_BINDING;
@@ -504,6 +505,13 @@ void PrintReadPropertyData(
* screen these out here, unless ShowValues is true. */
switch (rpm_property->propertyIdentifier) {
case PROP_DEVICE_ADDRESS_BINDING:
/* Make it VTS3-friendly and don't show "Null"
* as a value. */
if ( value->tag == BACNET_APPLICATION_TAG_NULL ) {
fprintf(stdout, "?");
break;
}
/* Else, fall through for normal processing. */
case PROP_DAYLIGHT_SAVINGS_STATUS:
case PROP_LOCAL_DATE:
case PROP_LOCAL_TIME:
@@ -1023,6 +1031,7 @@ int main(
/* Don't think we'll ever actually reach this point. */
invoke_id = 0;
myState = NEXT_OBJECT; /* Give up and move on to the next. */
Error_Count++;
}
break;
@@ -1098,6 +1107,7 @@ int main(
Print_Property_Identifier(
pPropList[Property_List_Index]);
fprintf(stdout, " \r\n");
Error_Count++;
if ( ++Property_List_Index >= Property_List_Length )
myState = NEXT_OBJECT; /* Give up and move on to the next. */
}
@@ -1111,6 +1121,7 @@ int main(
/* Don't think we'll ever actually reach this point. */
invoke_id = 0;
myState = NEXT_OBJECT; /* Give up and move on to the next. */
Error_Count++;
}
break;
@@ -1171,6 +1182,9 @@ int main(
} while (myObject.type < MAX_BACNET_OBJECT_TYPE);
if ( Error_Count > 0 )
fprintf(stderr, "\r-- Found %d Errors \r\n", Error_Count );
/* Closing brace for all Objects */
printf("} \r\n");
+4 -4
View File
@@ -899,14 +899,14 @@ typedef enum {
OBJECT_STRUCTURED_VIEW = 29,
OBJECT_ACCESS_DOOR = 30,
OBJECT_LIGHTING_OUTPUT = 31,
OBJECT_ACCESS_CREDENTIAL = 32,
OBJECT_ACCESS_CREDENTIAL = 32, /* Addendum 2008-j */
OBJECT_ACCESS_POINT = 33,
OBJECT_ACCESS_RIGHTS = 34,
OBJECT_ACCESS_USER = 35,
OBJECT_ACCESS_ZONE = 36,
OBJECT_AUTHENTICATION_FACTOR_INPUT = 37, /* credential-data-input */
mysterious_OBJECT_TYPE = 38, /* Can't find anything assigned to this */
OBJECT_BITSTRING_VALUE = 39, /* Addendum 2008-w */
OBJECT_CREDENTIAL_DATA_INPUT = 37, /* authentication-factor-input */
OBJECT_NETWORK_SECURITY = 38, /* Addendum 2008-g */
OBJECT_BITSTRING_VALUE = 39, /* Addendum 2008-w */
OBJECT_CHARACTERSTRING_VALUE = 40,
OBJECT_DATE_PATTERN_VALUE = 41,
OBJECT_DATE_VALUE = 42,
+27 -27
View File
@@ -208,59 +208,59 @@ INDTEXT_DATA bacnet_object_type_names[] = {
,
{OBJECT_ACCUMULATOR, "Accumulator"}
,
{OBJECT_PULSE_CONVERTER, "Pulse-Converter"}
{OBJECT_PULSE_CONVERTER, "Pulse Converter"}
,
{OBJECT_EVENT_LOG, "Event-Log"}
{OBJECT_EVENT_LOG, "Event Log"}
,
{OBJECT_GLOBAL_GROUP, "Global-Group"}
{OBJECT_GLOBAL_GROUP, "Global Group"}
,
{OBJECT_TREND_LOG_MULTIPLE, "Trend-Log-Multiple"}
{OBJECT_TREND_LOG_MULTIPLE, "Trend Log Multiple"}
,
{OBJECT_LOAD_CONTROL, "Load-Control"}
{OBJECT_LOAD_CONTROL, "Load Control"}
,
{OBJECT_STRUCTURED_VIEW, "Structured-View"}
{OBJECT_STRUCTURED_VIEW, "Structured View"}
,
{OBJECT_ACCESS_DOOR, "Access-Door"}
{OBJECT_ACCESS_DOOR, "Access Door"}
,
{OBJECT_LIGHTING_OUTPUT, "Lighting-Output"}
{OBJECT_LIGHTING_OUTPUT, "Lighting Output"}
,
{OBJECT_ACCESS_CREDENTIAL, "Access-Credential"}
{OBJECT_ACCESS_CREDENTIAL, "Access Credential"}
,
{OBJECT_ACCESS_POINT, "Access-Point"}
{OBJECT_ACCESS_POINT, "Access Point"}
,
{OBJECT_ACCESS_RIGHTS, "Access-Rights"}
{OBJECT_ACCESS_RIGHTS, "Access Rights"}
,
{OBJECT_ACCESS_USER, "Access-User"}
{OBJECT_ACCESS_USER, "Access User"}
,
{OBJECT_ACCESS_ZONE, "Access-Zone"}
{OBJECT_ACCESS_ZONE, "Access Zone"}
,
{OBJECT_AUTHENTICATION_FACTOR_INPUT, "Authentication-Factor-Input"}
{OBJECT_CREDENTIAL_DATA_INPUT, "Credential Data Input"}
,
{mysterious_OBJECT_TYPE, "object-of-mystery"}
{OBJECT_NETWORK_SECURITY, "Network Security"}
,
{OBJECT_BITSTRING_VALUE, "Bitstring-Value"}
{OBJECT_BITSTRING_VALUE, "Bitstring Value"}
,
{OBJECT_CHARACTERSTRING_VALUE, "Characterstring-Value"}
{OBJECT_CHARACTERSTRING_VALUE, "Characterstring Value"}
,
{OBJECT_DATE_PATTERN_VALUE, "Date-Pattern-Value"}
{OBJECT_DATE_PATTERN_VALUE, "Date Pattern Value"}
,
{OBJECT_DATE_VALUE, "Date-Value"}
{OBJECT_DATE_VALUE, "Date Value"}
,
{OBJECT_DATETIME_PATTERN_VALUE, "Datetime-Pattern-Value"}
{OBJECT_DATETIME_PATTERN_VALUE, "Datetime Pattern Value"}
,
{OBJECT_DATETIME_VALUE, "Datetime-Value"}
{OBJECT_DATETIME_VALUE, "Datetime Value"}
,
{OBJECT_INTEGER_VALUE, "Integer-Value"}
{OBJECT_INTEGER_VALUE, "Integer Value"}
,
{OBJECT_LARGE_ANALOG_VALUE, "Large-Analog-Value"}
{OBJECT_LARGE_ANALOG_VALUE, "Large Analog Value"}
,
{OBJECT_OCTETSTRING_VALUE, "Octetstring-Value"}
{OBJECT_OCTETSTRING_VALUE, "Octetstring Value"}
,
{OBJECT_POSITIVE_INTEGER_VALUE, "Positive-Integer-Value"}
{OBJECT_POSITIVE_INTEGER_VALUE, "Positive Integer Value"}
,
{OBJECT_TIME_PATTERN_VALUE, "Time-Pattern-Value"}
{OBJECT_TIME_PATTERN_VALUE, "Time Pattern Value"}
,
{OBJECT_TIME_VALUE, "Time-Value"}
{OBJECT_TIME_VALUE, "Time Value"}
,
{0, NULL}
/* Enumerated values 0-127 are reserved for definition by ASHRAE.