RdcyAcyclicRegisterUsage (FUN)

FUNCTION RdcyAcyclicRegisterUsage : RTS_IEC_RESULT

Register a usage for the acyclic redundancy interface. Use the event handle returned in the hEvent parameter for registering your callback function for the EVT_RdcyAcyclicRecv event. Precondition: The acyclic data transfer module has to have reached at least the RA_STATE_INITIALIZED RdcyAcyclicState. Hint: The current state of the acyclic data transfer module can be queried with the RdcyAcyclicGetCurState FUNCTION.

InOut:

Scope

Name

Type

Comment

Return

RdcyAcyclicRegisterUsage

RTS_IEC_RESULT

Error code (see CmpErrors.library). ERR_DUPLICATE if data name is not unique, ERR_NOTINITIALIZED if the acyclic data transfer module has not yet reached the RA_STATE_INITIALIZED RdcyAcyclicState, ERR_PARAMETER if one of the parameters is invalid, ERR_FAILED if the event could not be created or the MemBlockDictBock could not be created, else ERR_OK

Input

pcszAcyclicDataUUID

REFERENCE TO STRING

Data UUID (AKA data GUID) in textual representation. The size is 37 bytes (36 characters, plus ‘0’). As per RFC 9562, the UUID is represented as hexadecimal values in the 8-4-4-4-12 format, xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, where every x represents 4 bits. Note that the alphabetic characters may be all uppercase, all lowercase, or mixed case. An example string using this UUID format: f81d4fae-7dec-11d0-a765-00a0c91e6bf6

pEventID

POINTER TO DWORD

Output: Pointer to the EVENTID of the event with the hEvent handle. Every call of this function returns a new unique EVENTID. This can be used inside your callback function to check if the received data message is of your registered usage.

phEvent

POINTER TO RTS_IEC_HANDLE

Output: Pointer to an CmpEventMgr event handle. The phEvent event will be posted when an acyclic data message has been received. To be used for the EventRegisterCallbackFunction() function of the CmpEventMgr library.