BACnetCreateObject
(FUN)
FUNCTION BACnetCreateObject : IEC_BACNET_STATUS
Sends a CreateObject request. Sends a request to create a new instance of an object which may be as standard as vendor-specified object. This service may provide initialization of the properties of the newly created standard objects or the property values may be written later. This routine may control APDU properties like APDU length, segmentation and timeout for both request and response. This routine can execute asynchronously, i.e. this routine will return to the caller before the BACnet reply comes so that the applications can keep running. In this case the response information will be received by the thread which is responsible for receiving asynchronous responses. An optional BACNET_CREATE_OBJECT_COMPLETE_CB routine, which is provided by the BACnet application, shall be used to process this information. If a number of asynchronous requests are sent, the responses shall be queued and identified by the transaction handles. If the application does not supply the BACNET_CREATE_OBJECT_COMPLETE_CB routine; then this routine sends a request and waits for reply.
- InOut:
Scope
Name
Type
Comment
Return
BACnetCreateObject
A status indicating if the operation worked.
Input
pSourceAddress
POINTER TO IEC_BACNET_ADDRESS
If the BACnet application has only one device constructed and installed, this can be 0. In this case the MAC address of this device will be used. Otherwise this shall be the MAC address returned on device object construction.
pDestinationAddress
POINTER TO IEC_BACNET_ADDRESS
This is the MAC address of the device to which the request should be sent.
pServiceInfo
POINTER TO IEC_BACNET_CREATE_OBJECT_INFO
A pointer to the request information data structure. This data structure specifies either Object Type or ObjectID to create a new instance of an object and a list of property values.
pAPDUParams
POINTER TO IEC_BACNET_APDU_PROPERTIES
A pointer to the APDU-Properties structure which sets APDU properties for this transaction only. This does not change global defaults or settings for the application APDU Properties. This argument may be 0. In this case APDU properties are used which were specified in the device object properties of the applications device which sends the request.
pTransactionToken
POINTER TO BACnetAsyncTransactionToken
Transaction token of the asynchronous call - see BACnetAsyncTransactionToken.
pError
POINTER TO IEC_BACNET_ERROR
A pointer to a structure to hold BACnet Error information. pError may be 0 if the application isn’t interested in detailed error information.
pObjectID
POINTER TO BACnetCreateObjectResult
A pointer to the memory block to return the object Identifier of a newly created object, plus the “first failed” property which may be 0. See BACnetCreateObjectResult
pFirstFailed
POINTER TO IEC_BACNET_UNSIGNED
A pointer to a buffer in which to place the sequence number of the first element in the pElements list which cannot be added to the property. pFirstFailed may be 0.