Enhanced the object API with optional functions.

This commit is contained in:
skarg
2009-08-29 20:26:32 +00:00
parent 10e7ad99b4
commit 2ee60ea8b3
3 changed files with 35 additions and 7 deletions
+2 -1
View File
@@ -67,6 +67,7 @@ static const int Properties_Required[] = {
static const int Properties_Optional[] = {
PROP_DESCRIPTION,
PROP_STATE_TEXT,
-1
};
@@ -399,7 +400,7 @@ int Multistate_Input_Encode_Property_APDU(
characterstring_init_ansi(&char_string,
Multistate_Input_State_Text(object_instance, i));
/* FIXME: this might go beyond MAX_APDU length! */
apdu_len = encode_application_character_string(
len = encode_application_character_string(
&apdu[apdu_len],
&char_string);
/* add it if we have room */
+17 -2
View File
@@ -45,8 +45,11 @@ extern "C" {
void);
uint32_t Analog_Output_Index_To_Instance(
unsigned index);
char *Analog_Output_Name(
uint32_t object_instance);
unsigned Analog_Output_Instance_To_Index(
uint32_t instance);
bool Analog_Output_Object_Instance_Add(
uint32_t instance);
float Analog_Output_Present_Value(
uint32_t object_instance);
unsigned Analog_Output_Present_Value_Priority(
@@ -58,6 +61,18 @@ extern "C" {
bool Analog_Output_Present_Value_Relinquish(
uint32_t object_instance,
unsigned priority);
char *Analog_Output_Name(
uint32_t object_instance);
bool Analog_Output_Name_Set(
uint32_t object_instance,
char *new_name);
char *Analog_Output_Description(
uint32_t instance);
bool Analog_Output_Description_Set(
uint32_t instance,
char *new_name);
void Analog_Output_Init(void);
+16 -4
View File
@@ -39,14 +39,15 @@ extern "C" {
const int **pRequired,
const int **pOptional,
const int **pProprietary);
bool Multistate_Input_Valid_Instance(
uint32_t object_instance);
unsigned Multistate_Input_Count(
void);
uint32_t Multistate_Input_Index_To_Instance(
unsigned index);
char *Multistate_Input_Name(
uint32_t object_instance);
unsigned Multistate_Input_Instance_To_Index(
uint32_t instance);
int Multistate_Input_Encode_Property_APDU(
uint8_t * apdu,
@@ -61,18 +62,29 @@ extern "C" {
BACNET_ERROR_CLASS * error_class,
BACNET_ERROR_CODE * error_code);
/* optional API */
bool Multistate_Input_Object_Instance_Add(
uint32_t instance);
char *Multistate_Input_Name(
uint32_t object_instance);
bool Multistate_Input_Name_Set(
uint32_t object_instance,
char *new_name);
uint32_t Multistate_Input_Present_Value(
uint32_t object_instance);
bool Multistate_Input_Present_Value_Set(
uint32_t object_instance,
uint32_t value);
bool Multistate_Input_Description_Set(
uint32_t object_instance,
char *text_string);
bool Multistate_Input_State_Text_Set(
uint32_t object_instance,
uint32_t state_index,
char *new_name);
bool Multistate_Input_Max_States_Set(
uint32_t instance,
uint32_t max_states_requested);
void Multistate_Input_Init(
void);