EVT_BACNET_REINITDEV (STRUCT)

TYPE EVT_BACNET_REINITDEV : STRUCT

The ReinitializeDevice service hook

This is the type declaration for the Reinitialize Device service application hook. This hook is given all of the parameters of a service request, and is responsible for all error checking (Address correctness, password length and so forth). A pointer to the routine is registered with the BACnet server by BACnetSetHook API routine. A hook can be registered by the registering API routine at any time. One hook procedure is registered per service. If a hook is registered more than once for the same service, the new hook procedure replaces old one. A 0 procedure pointer can be used to deregister the hook. A Reinitialize Device hook must complete its service request processing by using one of the transaction completion API routines: BACnetSrvcAbortCbCompletion, BACnetSrvcErrorCbCompletion, BACnetSrvcIgnoreCbCompletion, or BACnetSrvcRejectCbCompletion. Hooks can access the local Properties maintained in the API database by using the BACnetStorePropertyInstance / BACnetRetrievePropertyInstance routines. A hook can choose not to override the default API processing of a service request by returning the value CB_STATUS_DEFAULT.

InOut:

Name

Type

Comment

pCBStatus

POINTER TO IEC_BACNET_CB_STATUS

CB-Status returned for the event. “Default” processes the standard APIs reaction, which needs no additional Callback-Signalling.

phTransaction

POINTER TO BYTE

This is the Transaction State Machine (TSM) handle for the current service request. It is generated by the BACnet API and is the first parameter given to the Hook- Completion functions.

sourceAddress

POINTER TO IEC_BACNET_ADDRESS

This is the MAC address of the BACnet addressed device from which the request has been sent.

destinationAddress

POINTER TO IEC_BACNET_ADDRESS

This is the MAC address of the device constructed by the application which has received the request.

pServiceInfo

POINTER TO IEC_BACNET_REINIT_DEV_INFO

A pointer to the service information data structure. The fields of this data structure include the Reinit Type (REINIT_COLDSTART or REINIT_WARMSTART), and a password.