# FSFile

## Definition

  `#include <nitro/fs.h>`
  `

      /* file and directory structure */
      typedef struct FSFile
      {
      // private:
          struct FSFile              *next;
          void                       *userdata;
          struct FSArchive           *arc;
          u32                         stat;
          void                       *argument;
          FSResult                    error;
          OSThreadQueue               queue[1];
          union
          {
              u8                      reserved1[16];
              FSROMFATProperty        prop;
          };
          union
          {
              u8                      reserved2[24];
              FSROMFATCommandInfo     arg;
          };
      } FSFile;

  `

## Description

This structure is used by file and directory access functions.
All members are used only in internal processing. Direct operation of these is prohibited.

## Note

This type of internal expression may change in future enhancements. Avoid programming that depends upon sizes and members in the current package.

## See Also

`FS_OpenFileEx
FS_OpenFileFast
FS_CloseFile
FS_GetFileLength
FS_ReadFile
FS_SeekFile
FS_SeekFileToBegin
FS_SeekFileToEnd
FS_FindDir
FS_ReadDir
FS_TellDir
FS_SeekDir
FS_RewindDir`

## Revision History

2009/01/14 Corrected structure definition to match the header file.
2008/10/02 Updated part of the See Also list.
2004/11/02 Corrected structure definition to match the header file.
2004/05/20 Revised description due to changes in `FSFile`.
2004/05/14 Revised description due to changes in `FSFile`.
2004/04/13 Revised description due to changes in `FSFile`.
2004/04/08 Revised description due to the integration of `FSDir` and `FSFile`.
2004/04/01Initial version.

CONFIDENTIAL