SysDirAsyncFB (FB) ¶ FUNCTION_BLOCK SysDirAsyncFB EXTENDS AsyncBaseClass Methods: SysDirCloseAsync SysDirCreateAsync SysDirDeleteAsync SysDirGetCurrentAsync SysDirOpenAsync SysDirReadAsync SysDirRenameAsync SysDirSetCurrentAsync SysDirCloseAsyncWrapper SysDirCreateAsyncWrapper SysDirDeleteAsyncWrapper SysDirGetCurrentAsyncWrapper SysDirOpenAsyncWrapper SysDirReadAsyncWrapper SysDirRenameAsyncWrapper SysDirSetCurrentAsyncWrapper Structure: SysDirCloseAsync (Method) SysDirCreateAsync (Method) SysDirDeleteAsync (Method) SysDirGetCurrentAsync (Method) SysDirOpenAsync (Method) SysDirReadAsync (Method) SysDirRenameAsync (Method) SysDirSetCurrentAsync (Method) Wrapper SysDirCloseAsyncWrapper (Method) SysDirCreateAsyncWrapper (Method) SysDirDeleteAsyncWrapper (Method) SysDirGetCurrentAsyncWrapper (Method) SysDirOpenAsyncWrapper (Method) SysDirReadAsyncWrapper (Method) SysDirRenameAsyncWrapper (Method) SysDirSetCurrentAsyncWrapper (Method)
SysDirAsyncFB.SysDirCloseAsync (METH) ¶ METHOD SysDirCloseAsync : RTS_IEC_HANDLE This method asynchronously closes an open directory. For details, see Description. InOut: Scope Name Type Comment Return SysDirCloseAsync RTS_IEC_HANDLE Handle of AsyncJob Input pParam POINTER TO tSysDirClose pudState POINTER TO UDINT Current state of AsyncJob pResult POINTER TO RTS_IEC_RESULT Result of AsyncJob creation
SysDirAsyncFB.SysDirCreateAsync (METH) ¶ METHOD SysDirCreateAsync : RTS_IEC_HANDLE This method asynchronously creates a new directory with the specified name. For details, see Description. InOut: Scope Name Type Comment Return SysDirCreateAsync RTS_IEC_HANDLE Handle of AsyncJob Input pParam POINTER TO tSysDirCreate pudState POINTER TO UDINT Current state of AsyncJob pResult POINTER TO RTS_IEC_RESULT Result of AsyncJob creation
SysDirAsyncFB.SysDirDeleteAsync (METH) ¶ METHOD SysDirDeleteAsync : RTS_IEC_HANDLE This method asynchronously deletes a directory with the specified name. For details, see Description. InOut: Scope Name Type Comment Return SysDirDeleteAsync RTS_IEC_HANDLE Handle of AsyncJob Input pParam POINTER TO tSysDirDelete pudState POINTER TO UDINT Current state of AsyncJob pResult POINTER TO RTS_IEC_RESULT Result of AsyncJob creation
SysDirAsyncFB.SysDirGetCurrentAsync (METH) ¶ METHOD SysDirGetCurrentAsync : RTS_IEC_HANDLE This method asynchronously gets the current working directory for IEC file access. For details, see Description. InOut: Scope Name Type Comment Return SysDirGetCurrentAsync RTS_IEC_HANDLE Handle of AsyncJob Input pParam POINTER TO tSysDirGetCurrent pudState POINTER TO UDINT Current state of AsyncJob pResult POINTER TO RTS_IEC_RESULT Result of AsyncJob creation
SysDirAsyncFB.SysDirOpenAsync (METH) ¶ METHOD SysDirOpenAsync : RTS_IEC_HANDLE This method asynchronously opens a specified directory and returns a handle and the first directory entry. For details, see Description. InOut: Scope Name Type Comment Return SysDirOpenAsync RTS_IEC_HANDLE Handle of AsyncJob Input pParam POINTER TO tSysDirOpen pudState POINTER TO UDINT Current state of AsyncJob pResult POINTER TO RTS_IEC_RESULT Result of AsyncJob creation
SysDirAsyncFB.SysDirReadAsync (METH) ¶ METHOD SysDirReadAsync : RTS_IEC_HANDLE This method asynchronously reads the next directory entry. It writes the directory entry in szDirEntry. For details, see Description. InOut: Scope Name Type Comment Return SysDirReadAsync RTS_IEC_HANDLE Handle of AsyncJob Input pParam POINTER TO tSysDirRead pudState POINTER TO UDINT Current state of AsyncJob pResult POINTER TO RTS_IEC_RESULT Result of AsyncJob creation
SysCpuAtomicAdd (FUN) ¶ FUNCTION SysCpuAtomicAdd : DINT <description> Function to increment the content of the given pointer by nSum in one atomic operation (task safe). IMPLEMENTATION NOTE: - Add/Sub the value to the content of the pointer - Return the value after the Add/Sub operation Both things must be done atomic! </description> <result><p>RESULT: Returns the value after the increment operation in an atomic way! </p></result> <SIL2/> InOut: Scope Name Type Comment Return SysCpuAtomicAdd DINT Input piValue POINTER TO DINT <param name=”piValue” type=”INOUT”>Pointer to the value to increment</param> nSum DINT <param name=”nSum” type=”IN”>Summand for the operation. >0 to increment, <0 to decrement</param> pResult POINTER TO RTS_IEC_RESULT <param name=”pResult” type=”OUT”>Pointer to runtime system error code (see CmpErrors.library)</param>
SysCpuAtomicAdd64 (FUN) ¶ FUNCTION SysCpuAtomicAdd64 : LINT <description> Function to increment the content of the given pointer by nSum in one atomic operation (task safe). IMPLEMENTATION NOTE: - Add/Sub the value to the content of the pointer - Return the value after the Add/Sub operation Both things must be done atomic! </description> <result><p>RESULT: Returns the value after the increment operation in an atomic way! </p></result> <SIL2/> InOut: Scope Name Type Comment Return SysCpuAtomicAdd64 LINT Input piValue POINTER TO LINT <param name=”piValue” type=”INOUT”>Pointer to the value to increment</param> nSum LINT <param name=”nSum” type=”IN”>Summand for the operation. >0 to increment, <0 to decrement</param> pResult POINTER TO RTS_IEC_RESULT <param name=”pResult” type=”OUT”>Pointer to runtime system error code (see CmpErrors.library)</param>
SysCpuAtomicCompareAndSwap (FUN) ¶ FUNCTION SysCpuAtomicCompareAndSwap : RTS_IEC_RESULT <description> Function for compare-and-swap in one atomic operation (task safe). Supports only 32- and 64-bit types The function compares the pAddress value with the pCompareValue value. If the pAddress value is equal to the pCompareValue value, the pSwapValue value is stored in the address specified by pAddress. Otherwise, no operation is performed. The function was successful if the * pSwapValue value is stored in the address specified by pAddress. </description> <result><p>RESULT: Returns ERR_OK if the swap was successful (if the pSwapValue value is stored in the address specified by pAddress) </p></result> <SIL2/> InOut: Scope Name Type Comment Return SysCpuAtomicCompareAndSwap RTS_IEC_RESULT Input pAddress POINTER TO BYTE pointer to the value to test pSwapValue POINTER TO BYTE pointer to new valid pCompareValue POINTER TO BYTE pointer to compare value valueSize USINT size of the value