EVT_BACNET_WRITEPROPERTYCALLBACK2 (STRUCT)

TYPE EVT_BACNET_WRITEPROPERTYCALLBACK2 : STRUCT

Extends EVT_BACNET_WRITEPROPERTYCALLBACK with argument BACNET_PROP_WRITE_CB.bInternalCall. This extension to the Write-Property-callback has been introduced with BACstack V14.3.34.1 which was needed to fix some problems around EventEnrollment. The purpose of this extension is to allow to distinguish Write-Property-callbacks triggered by client-requests from Write-Property-callbacks done by BACstack-internal processing to have a chance to break complex feedback loops eventually caused by the application.

InOut:

Name

Type

Comment

pCallbackStatus

POINTER TO IEC_BACNET_CALLBACK_STATUS

Callback-Status returned for the event. “Default” processes the standard APIs reaction and takes no action.

deviceNumber

IEC_BACNET_DWORD

The device instance number in which the object is to be expected.

pObjectID

POINTER TO IEC_BACNET_OBJECT_ID

Pointer to the object identifier of the object which property value is to be written.

propertyID

IEC_BACNET_PROPERTY_ID

The Property Identifier of the Property to be written (for example the Present Value Property of an Analog Input Object. The same callback routine is invoked for all properties of all objects.

index

IEC_BACNET_SIGNED

An index of an array item. If the Property is not an array, the index value BACNET_VOID_INDEX (-1) should be used. If the Property is an array, the index value BACNET_ENTIRE_ARRAY (-1) can be used to read the entire array. If the Property is an array, the index value “BACNET_ARRAY_COUNT (0)” (use 0) will write the number of elements in the array. The indices of BACnet arrays start counting at 1.

pPropertyContents

POINTER TO IEC_BACNET_PROPERTY_CONTENTS

The property contents buffer which is filled by the stack API. The user has the choice to use the c-structure representation of the value (stored in the buffer member of the structure) or to use the ASN1 encoded representation of the value (stored in the rawBuffer member of the structure).

bInternalCall

IEC_BACNET_BOOLEAN

If set the write callback has been initiated by internal API update processes for the specified property and it was NOT initiated by an service access (write, write-multiple…) over BACnet.