OSCBS-23 Scalable BACnet object arrays, part #2

Add processing object table as section iterable for zephyr
      - zephyr/subset/object/device.c
      - zephyr/subset/object/objects.ld
    Add object descriptor array as dynamic list
      - zephyr/subset/object/object.h
      - zephyr/subset/object/*.c
This commit is contained in:
Mikhail Antropov
2022-06-17 11:56:17 +03:00
parent 23fb2394c5
commit 1b147e2edc
41 changed files with 689 additions and 1 deletions
+26
View File
@@ -0,0 +1,26 @@
/*
* Copyright (c) 2022 Legrand North America, LLC.
*
* SPDX-License-Identifier: MIT
*/
#include "object.h"
#include "bacnet/readrange.h"
#include "bacnet/basic/object/netport.h"
OBJECT_FUNCTIONS(Network_Port, struct netport_object_data);
bool Network_Port_Object_Instance_Number_Set(
unsigned index, uint32_t object_instance)
{
struct netport_object_data *descr;
uint32_t old_inst = Network_Port_Index_To_Instance(index);
descr = Keylist_Data_Delete(Object_List, old_inst);
if (descr == NULL) {
return false;
}
descr->Instance_Number = object_instance;
return Keylist_Data_Add(Object_List, object_instance, descr) >= 0;
}