/*
 * $Id: hb_apifs.txt 16297 2011-02-14 10:28:37Z vszakats $
 */

/*
 * The following parts are Copyright of the individual authors.
 * www - http://harbour-project.org
 *
 * Copyright 1999 David G. Holm <dholm@jsd-llc.com>
 *   Header file for the API
 * $SUBCATEGORY$
 *      FileSys
 *
 * See COPYING for licensing terms.
 *
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsChDir()
 *  $CATEGORY$
 *      C level API
 *  $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Change working directory
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsChDir( BYTE * pszDirName ) --> ( HB_BOOL )bResult
 *  $ARGUMENTS$
 *      <pszDirName>
 *  $RETURNS$
 *      <bResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsChDrv()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Change working drive
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsChDrv( BYTE nDrive ) --> ( USHORT )usResult
 *  $ARGUMENTS$
 *      <nDrive>
 *  $RETURNS$
 *      <usResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Procedure
 *  $NAME$
 *      hb_fsClose()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Close a file
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsClose( HB_FHANDLE hFileHandle )
 *  $ARGUMENTS$
 *      <hFileHandle>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Procedure
 *  $NAME$
 *      hb_fsCommit()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Commit updates of a file
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsCommit( HB_FHANDLE hFileHandle )
 *  $ARGUMENTS$
 *      <hFileHandle>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsCreate()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Create a file
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsCreate( BYTE * pszFileName, USHORT uiAttribute ) --> ( HB_FHANDLE )hResult
 *  $ARGUMENTS$
 *      <pszFileName>
 *
 *      <uiAttribute>
 *  $RETURNS$
 *      <hResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsCreateTemp()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Create a temporary file from components
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsCreateTemp( const BYTE * pszDir, const BYTE * pszPrefix, USHORT uiAttribute ) --> ( HB_FHANDLE )hResult
 *  $ARGUMENTS$
 *      <pszDir>
 *
 *      <pszPrefix>
 *
 *      <uiAttribute>
 *  $RETURNS$
 *      <hResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsCurDir()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Retrieve a static pointer containing current directory for specified drive
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsCurDir( USHORT uiDrive ) --> ( BYTE * )pszResult
 *  $ARGUMENTS$
 *      <uiDrive>
 *  $RETURNS$
 *      <pszResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsCurDirBuff()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Copy current directory for given drive into a buffer
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsCurDirBuff( USHORT uiDrive, BYTE * pbyBuffer, HB_SIZE ulLen ) --> ( USHORT )usResult
 *  $ARGUMENTS$
 *      <uiDrive>
 *
 *      <pbyBuffer>
 *
 *      <ulLen>
 *  $RETURNS$
 *      <usResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsCurDrv()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Retrieve current drive number
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsCurDrv( void ) --> ( BYTE )cResult
 *  $ARGUMENTS$
 *
 *  $RETURNS$
 *      <cResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsDelete()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Delete a file
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsDelete( BYTE * pszFileName ) --> ( int )iResult
 *  $ARGUMENTS$
 *      <pszFileName>
 *  $RETURNS$
 *      <iResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsEof()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Determine if an open file is position at end-of-file
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsEof( HB_FHANDLE hFileHandle ) --> ( HB_BOOL )bResult
 *  $ARGUMENTS$
 *      <hFileHandle>
 *  $RETURNS$
 *      <bResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsError()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Retrieve file system error
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsError( void ) --> ( USHORT )usResult
 *  $ARGUMENTS$
 *
 *  $RETURNS$
 *      <usResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsFile()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Determine if a file exists
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsFile( BYTE * pszFileName ) --> ( HB_BOOL )bResult
 *  $ARGUMENTS$
 *      <pszFileName>
 *  $RETURNS$
 *      <bResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsFSize()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Determine the size of a file
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsFSize( BYTE * pszFileName, HB_BOOL bUseDirEntry ) --> ( HB_FOFFSET )ulResult
 *  $ARGUMENTS$
 *      <pszFileName>
 *
 *      <bUseDirEntry>
 *  $RETURNS$
 *      <ulResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsExtOpen()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Open a file using default extension and a list of paths
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsExtOpen( BYTE * pszFileName, BYTE * pDefExt, USHORT uiFlags, BYTE * pPaths, PHB_ITEM pError ) --> ( HB_FHANDLE )hResult
 *  $ARGUMENTS$
 *      <pszFileName>
 *
 *      <pDefExt>
 *
 *      <uiFlags>
 *
 *      <pPaths>
 *
 *      <pError>
 *  $RETURNS$
 *      <hResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsIsDrv()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Determine if a drive number is a valid drive
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsIsDrv( BYTE nDrive ) --> ( USHORT )usResult
 *  $ARGUMENTS$
 *      <nDrive>
 *  $RETURNS$
 *      <usResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsIsDevice()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Determine if a file is attached to a device (console?)
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsIsDevice( HB_FHANDLE hFileHandle ) --> ( HB_BOOL )bResult
 *  $ARGUMENTS$
 *      <hFileHandle>
 *  $RETURNS$
 *      <bResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsLock()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Request a lock on a portion of a file
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsLock( HB_FHANDLE hFileHandle, HB_SIZE ulStart, HB_SIZE ulLength, USHORT uiMode ) --> ( HB_BOOL )bResult
 *  $ARGUMENTS$
 *      <hFileHandle>
 *
 *      <ulStart>
 *
 *      <ulLength>
 *
 *      <uiMode>
 *  $RETURNS$
 *      <bResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsMkDir()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Create a directory
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsMkDir( BYTE * pszDirName ) --> ( HB_BOOL )bResult
 *  $ARGUMENTS$
 *      <pszDirName>
 *  $RETURNS$
 *      <bResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsOpen()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Open a file
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsOpen( BYTE * pszFileName, USHORT uiFlags ) --> ( HB_FHANDLE )hResult
 *  $ARGUMENTS$
 *      <pszFileName>
 *
 *      <uiFlags>
 *  $RETURNS$
 *      <hResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsRead()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Read contents of a file into a buffer (<=64K)
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsRead( HB_FHANDLE hFileHandle, BYTE * pBuff, USHORT ulCount ) --> ( USHORT )usResult
 *  $ARGUMENTS$
 *      <hFileHandle>
 *
 *      <pBuff>
 *
 *      <ulCount>
 *  $RETURNS$
 *      <usResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsReadLarge()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Read contents of a file into a buffer (>64K)
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsReadLarge( HB_FHANDLE hFileHandle, BYTE * pBuff, HB_SIZE ulCount ) --> ( HB_SIZE )ulResult
 *  $ARGUMENTS$
 *      <hFileHandle>
 *
 *      <pBuff>
 *
 *      <ulCount>
 *  $RETURNS$
 *      <ulResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsRmDir()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Remove a directory
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsRmDir( BYTE * pszDirName ) --> ( HB_BOOL )bResult
 *  $ARGUMENTS$
 *      <pszDirName>
 *  $RETURNS$
 *      <bResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsRename()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Rename a file
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsRename( BYTE * pszOldName, BYTE * pszNewName ) --> ( int )iResult
 *  $ARGUMENTS$
 *      <pszOldName>
 *
 *      <pszNewName>
 *  $RETURNS$
 *      <iResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsSeekLarge()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Reposition an open file
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsSeekLarge( HB_FHANDLE hFileHandle, HB_FOFFSET lOffset, USHORT uiMode ) --> ( HB_FOFFSET )ulResult
 *  $ARGUMENTS$
 *      <hFileHandle>
 *
 *      <lOffset>
 *
 *      <uiMode>
 *  $RETURNS$
 *      <ulResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsTell()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Retrieve the current position of a file
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsTell( HB_FHANDLE hFileHandle ) --> ( HB_FOFFSET )ulResult
 *  $ARGUMENTS$
 *      <hFileHandle>
 *  $RETURNS$
 *      <ulResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Procedure
 *  $NAME$
 *      hb_fsTempName()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Create a temporary file name in a buffer
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsTempName( BYTE * pszBuffer, const BYTE * pszDir, const BYTE * pszPrefix )
 *  $ARGUMENTS$
 *      <pszBuffer>
 *
 *      <pszDir>
 *
 *      <pszPrefix>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsSetDevMode()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Change the device mode of a file (text/binary)
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsSetDevMode( HB_FHANDLE hFileHandle, int iDevMode ) --> int
 *  $ARGUMENTS$
 *      <hFileHandle>
 *
 *      <iDevMode>
 *  $RETURNS$
 *      previous mode or -1 on error
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Procedure
 *  $NAME$
 *      hb_fsSetDevRaw()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Change the device mode of a file to raw (binary)
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsSetDevRaw( HB_FHANDLE hFileHandle )
 *  $ARGUMENTS$
 *      <hFileHandle>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Procedure
 *  $NAME$
 *      hb_fsSetDevText()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Change the device mode of a file to text
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsSetDevText( HB_FHANDLE hFileHandle )
 *  $ARGUMENTS$
 *      <hFileHandle>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Procedure
 *  $NAME$
 *      hb_fsSetError()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Set the file system error number
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsSetError( USHORT uiError )
 *  $ARGUMENTS$
 *      <uiError>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsWrite()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Write to an open file from a buffer (<=64K)
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsWrite( HB_FHANDLE hFileHandle, BYTE * pBuff, USHORT ulCount ) --> ( USHORT )usResult
 *  $ARGUMENTS$
 *      <hFileHandle>
 *
 *      <pBuff>
 *
 *      <ulCount>
 *  $RETURNS$
 *      <usResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsWriteLarge()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Write to an open file from a buffer (>64K)
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsWriteLarge( HB_FHANDLE hFileHandle, BYTE * pBuff, HB_SIZE ulCount ) --> ( HB_SIZE )ulResult
 *  $ARGUMENTS$
 *      <hFileHandle>
 *
 *      <pBuff>
 *
 *      <ulCount>
 *  $RETURNS$
 *      <ulResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsFNameSplit()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      Split given filename into path, name and extension
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsFNameSplit( char * pszFileName ) --> ( PHB_FNAME )hResult
 *  $ARGUMENTS$
 *      <pszFileName>
 *  $RETURNS$
 *      <hResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsFNameMerge()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *      This function joins path, name and extension into a string with a filename
 *  $SYNTAX$
 *      C Prototype
 *
 *      #include "hbapifs.h"
 *      hb_fsFNameMerge( char * pszFileName, PHB_FNAME pFileName ) --> ( char * )pszResult
 *  $ARGUMENTS$
 *      <pszFileName>
 *
 *      <pFileName>
 *  $RETURNS$
 *      <pszResult>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Library is rtl
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsFLock()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *
 *  $SYNTAX$
 *      C Prototype (macro definition)
 *
 *      #include "hbapifs.h"
 *      hb_fsFLock( h, s, l ) --> <see hb_fsLock( h, s, l, FL_LOCK )>
 *  $ARGUMENTS$
 *      <h>
 *
 *      <s>
 *
 *      <l>
 *  $RETURNS$
 *      <see hb_fsLock( h, s, l, FL_LOCK )>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Header file is hbapifs.h
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */

/*  $DOC$
 *  $TEMPLATE$
 *      Function
 *  $NAME$
 *      hb_fsFUnlock()
 *  $CATEGORY$
 *      C level API
 * $SUBCATEGORY$
 *      FileSys
 *  $ONELINER$
 *
 *  $SYNTAX$
 *      C Prototype (macro definition)
 *
 *      #include "hbapifs.h"
 *      hb_fsFUnlock( h, s, l ) --> <see hb_fsLock( h, s, l, FL_UNLOCK )>
 *  $ARGUMENTS$
 *      <h>
 *
 *      <s>
 *
 *      <l>
 *  $RETURNS$
 *      <see hb_fsLock( h, s, l, FL_UNLOCK )>
 *  $DESCRIPTION$
 *
 *  $EXAMPLES$
 *
 *  $STATUS$
 *      R
 *  $COMPLIANCE$
 *      NA
 *  $FILES$
 *      Header file is hbapifs.h
 *  $PLATFORMS$
 *      All
 *  $SEEALSO$
 *
 *  $END$
 */
