Added a context variable in basic object data structure and API to get or set the context pointer. (#1111)

This commit is contained in:
Steve Karg
2025-09-26 13:19:58 -05:00
committed by GitHub
parent d91282be16
commit 2416157351
52 changed files with 997 additions and 8 deletions
+33
View File
@@ -43,6 +43,7 @@ struct object_data {
const char *Active_Text;
const char *Inactive_Text;
const char *Description;
void *Context;
#if defined(INTRINSIC_REPORTING) && (BINARY_VALUE_INTRINSIC_REPORTING)
uint32_t Time_Delay;
uint32_t Notification_Class;
@@ -1187,6 +1188,38 @@ void Binary_Value_Write_Disable(uint32_t object_instance)
}
}
/**
* @brief Set the context used with a specific object instance
* @param object_instance [in] BACnet object instance number
* @param context [in] pointer to the context
*/
void *Binary_Value_Context_Get(uint32_t object_instance)
{
struct object_data *pObject;
pObject = Keylist_Data(Object_List, object_instance);
if (pObject) {
return pObject->Context;
}
return NULL;
}
/**
* @brief Set the context used with a specific object instance
* @param object_instance [in] BACnet object instance number
* @param context [in] pointer to the context
*/
void Binary_Value_Context_Set(uint32_t object_instance, void *context)
{
struct object_data *pObject;
pObject = Keylist_Data(Object_List, object_instance);
if (pObject) {
pObject->Context = context;
}
}
/**
* @brief Creates a Binary Value object
* @param object_instance - object-instance number of the object