Delete (FB; Prefix fildl) ¶ FUNCTION_BLOCK Delete EXTENDS CBM.ETrig This function block deletes a file. Contrary to the original CAA specification the file may be deleted even if it is opened via ”FILE. Open ”. This behavior is dependent of the underlying operating system and file system. InOut: Scope Name Type Comment Input sFileName CAA.FILENAME Name of the file to be deleted Output eError ERROR Local library error ID (0: no error; 5101: time out)
EOF (FB; Prefix fileof) ¶ FUNCTION_BLOCK EOF EXTENDS CBM.ETrig This function block sets “xEOF” to “TRUE” if the current offset is equal to the end of the file. If the end of the file has not yet been reached, “FALSE” is returned. InOut: Scope Name Type Comment Input hFile CAA.HANDLE File handle Output eError ERROR Local library error ID (0: no error; 5101: time out) xEOF BOOL End of file is reached, TRUE: yes, FALSE: no
Flush (FB; Prefix filfl) ¶ FUNCTION_BLOCK Flush EXTENDS CBM.ETrig Flush write buffer of an opened file to disk. InOut: Scope Name Type Comment Input hFile CAA.HANDLE File handle Output eError ERROR Local library error ID (0: no error; 5101: time out)
GetAttribute (FB) ¶ FUNCTION_BLOCK GetAttribute EXTENDS CBM.ETrig With this function block file attributes can be obtained. InOut: Scope Name Type Comment Input hFile CAA.HANDLE File handle Output eError ERROR Local library error ID (0: no error; 5101: time out) eFileAttrib ATTRIB File attributes, FILE_ARCHIVE, FILE_HIDDEN, FILE_NORMAL, FILE_READONLY
GetPos (FB; Prefix filgp) ¶ FUNCTION_BLOCK GetPos EXTENDS CBM.ETrig This function block returns the offset position currently set in the file. The file must be opened via FILE. Open . InOut: Scope Name Type Comment Input hFile CAA.HANDLE File handle Output eError ERROR Local library error ID (0: no error; 5101: time out) udiPos __UXINT Offset position; Number of bytes from the start of the file
GetSize (FB; Prefix filgs) ¶ FUNCTION_BLOCK GetSize EXTENDS CBM.ETrig This function block returns the size of the file specified by “ sFileName “. InOut: Scope Name Type Comment Input sFileName CAA.FILENAME File name Output eError ERROR Local library error ID (0: no error; 5101: time out) szSize CAA.SIZE Actual file size in bytes
GetTime (FB; Prefix filgt) ¶ FUNCTION_BLOCK GetTime EXTENDS CBM.ETrig This function block returns date and time of the last modification of the file specified by “ sFileName “ InOut: Scope Name Type Comment Input sFileName CAA.FILENAME File name Output eError ERROR Local library error ID (0: no error; 5101: time out) dtLastModification DT Date and time of last modification, for example dt#2006-05-08-00:00:00
Open (FB; Prefix filop) ¶ FUNCTION_BLOCK Open EXTENDS CBM.ETrig This function block opens an already existing file or creates a new one. The return value is a file handle, which can then be used as an input ” hFile ” in the function blocks ”FILE. Write ”, ”FILE. Read ”, ”FILE. Close ”. There may be restrictions concerning the specification of the directory name, e.g. only capital letters allowed, for different targets. The function ”FILE. GetProperty ” shows these restrictions. InOut: Scope Name Type Comment Input sFileName CAA.FILENAME File name, absolute or relative path specification eFileMode MODE File mode: FILE_MWRITE - write, FILE_MREAD - read, FILE_MRDWR - read & write, FILE_MAPPD - append xExclusive BOOL UNSUPPORTED PARAMETER: IS ALWAYS FALSE! Note: Because of the POSIX behaviour of the file open functions on targets, there is no way to support xExclusive=TRUE! If a file still is opened, it can be deleted or renamed at the same time! Additionally a file can be opened several times (for reading and writing). Output eError ERROR Local library error ID (0: no error; 5101: time out) hFile CAA.HANDLE File handle
Read (FB; Prefix filrd) ¶ FUNCTION_BLOCK Read EXTENDS CBM.ETrigToA This function block reads the file, which was previously opened via ”FILE. Open ”. If less characters can be read than specified in ” szBuffer ”, the function block returns an active ” xDone ” and indicates the current number of characters in ” szSize ”. The size of the target memory structure for the bytes to be read and the number of bytes to be read will not be checked. If the stability of the pointer on the data structures and their contents cannot be guaranteed in case of an online change, an online change must be avoided. InOut: Scope Name Type Comment Input hFile CAA.HANDLE File handle pBuffer CAA.PVOID Target address for the first byte to be read; can be retrieved via operator ADR szBuffer CAA.SIZE Maximum number of bytes to be read; can be retrieved via operator sizeof Output eError ERROR Local library error ID (0: no error; 5101: time out) szSize CAA.SIZE Current number of successfully read bytes; this value is already valid before xDone has been set
Rename (FB) ¶ FUNCTION_BLOCK Rename EXTENDS CBM.ETrig This function block modifies the file name and is optional for the different targets. Contrary to the original CAA specification the file may be renamed even if it is opened via ”FILE. Open ”. This behavior is dependent of the underlying operating system and file system. Whether this function block is implemented or not is explicitly stated and encoded in the return value of the function ”FILE. GetProperty ”. The function block cannot be used to move directories! InOut: Scope Name Type Comment Input sFileNameOld CAA.FILENAME Old file name sFileNameNew CAA.FILENAME New file name Output eError ERROR Local library error ID (0: no error; 5101: time out)