BACnetStack_AddLoggedObjectToTrendLogMultiple
bool BACnetStack_AddLoggedObjectToTrendLogMultiple( const uint32_t deviceInstance, const uint32_t trendLogMultipleInstance, const uint16_t logObjectType, const uint32_t logObjectInstance, const uint32_t logPropertyIdentifier, const bool usePropertyArrayIndex, const uint32_t propertyArrayIndex, const bool isLoggedObjectInRemoteDevice, const uint32_t logDeviceInstance);Adds an object to be logged to a Trend Log Multiple Object.
Must be called after creating the Trend Log Multiple Object using the AddTrendLogMultipleObject function.
BACnet reference: ANSI/ASHRAE 135-2024 clause 12.30 (Trend Log Multiple Object Type).
Parameters
Section titled “Parameters”| Parameter | Direction | Description |
|---|---|---|
deviceInstance |
in | The instance number of the device that owns the Trend Log Multiple Object. |
trendLogMultipleInstance |
in | The instance number of the Trend Log Multiple object that will log this object. |
logObjectType |
in | The BACnet object type of the object to log. See CASBACnetStack::BACnetObjectType for available values. With logObjectInstance, this is one BACnet Object Identifier carried as two parameters. |
logObjectInstance |
in | The instance number of the object to log. |
logPropertyIdentifier |
in | The BACnet Property Identifier of the object to log. See BACnetPropertyIdentifier for available values. |
usePropertyArrayIndex |
in | Flag that determines whether to use the property array index (true) or not (false). |
propertyArrayIndex |
in | The property array index to use; ignored when usePropertyArrayIndex is false. The object, property and index form one BACnetDeviceObjectPropertyReference, appended to Log_DeviceObjectProperty, a BACnetARRAY[N] of them (cl. 12.30, cl. 21). |
isLoggedObjectInRemoteDevice |
in | MUST be false. Passing true ALWAYS fails this call - logging a property held in a remote device is not implemented. Contact Chipkin if you need it. |
logDeviceInstance |
in | Ignored. It is only consulted on the remote-device path, which cannot succeed (see isLoggedObjectInRemoteDevice). Pass 0. |
Returns
Section titled “Returns”True on success; false if the device or the Trend Log Multiple object does not exist, isLoggedObjectInRemoteDevice is true, or Trend Log Multiple support was not compiled. Each call APPENDS: the reference is added with no duplicate check and no upper bound, and there is no export that removes one or reads the list back. Adding the same object and property twice produces a Log_Device_Object_Property array with two identical entries and two values in every record. A call made after the log already holds records keeps them, and gives each record that holds logged values an error, class PROPERTY and code LOGGED_VALUE_PURGED, for the new entry (135-2024 cl. 12.30.11), so every record has one value per entry. If those records cannot be updated (out of memory), the call returns false and the entry is not added.
Topic: Schedules, calendars, trend logs and other object configuration. Declared in CASBACnetStackDLL.h.