BACnetStack_RegisterCallbackWriteGroupInhibitDelay
void BACnetStack_RegisterCallbackWriteGroupInhibitDelay( bool (*FPCallbackWriteGroupInhibitDelay)(const uint32_t deviceInstance, const uint32_t channelInstance, const bool inhibitDelay));Registers the OPTIONAL CallbackWriteGroupInhibitDelay callback.
The WriteGroup processor invokes it for each Channel object of the device, before applying any change-list entry to that Channel, relaying the WriteGroup-Request ‘Inhibit Delay’ flag so the host can decide, per Channel, whether to propagate a write immediately or after the Channel’s Execution_Delay (ASHRAE 135 cl. 15.11.1.1.4 / Channel object cl. 12.53).
This is NOT a property setter and writes nothing. It is a per-Channel notification relaying one flag from the request so the host can decide how to propagate.
TIMING CAVEAT: group membership is decided for the DEVICE, not per Channel (cl. 15.11): the device is a member when any one of its Channel objects lists the group number in Control_Groups, and a device that is not a member gets no callback. Once it is a member, the callback fires once for EVERY Channel object of the device whose Channel_Number can be read - including Channels that do not list the group themselves - BEFORE the stack has determined whether the request carries a change-list entry for that Channel. A Channel with no entry addressed to its Channel_Number still gets the callback and is then never written. Do not use it to arm a one-shot latch that assumes a write will follow.
NOTE: the callback’s bool return value is RESERVED - it is not read by the WriteGroup processor and does not affect processing; implementations should return true. The bool return type is kept only for uniformity with the other callback signatures.
Registering has no effect if WriteGroup support was not compiled (STACK_OPTION_WRITE_GROUP).
See also: CASBACnetStack::FPCallbackWriteGroupInhibitDelay
BACnet reference: ANSI/ASHRAE 135-2024 clause 15.11 (WriteGroup Service).
Parameters
Section titled “Parameters”| Parameter | Direction | Description |
|---|---|---|
FPCallbackWriteGroupInhibitDelay |
in | The callback function pointer to register, or NULL to clear. |
Callback type
Section titled “Callback type”FPCallbackWriteGroupInhibitDelay
Topic: Service callbacks. Declared in CASBACnetStackDLL.h.