# FS_ARCHIVE_PROC_*

## C Specification

      #include <nitro/fs.h>

      #define FS_ARCHIVE_PROC_READFILE        (1 << FS_COMMAND_READFILE)
      #define FS_ARCHIVE_PROC_WRITEFILE       (1 << FS_COMMAND_WRITEFILE)
      #define FS_ARCHIVE_PROC_ASYNC   \
          (FS_ARCHIVE_PROC_READFILE | FS_ARCHIVE_PROC_WRITEFILE)

      #define FS_ARCHIVE_PROC_SEEKDIR         (1 << FS_COMMAND_SEEKDIR)
      #define FS_ARCHIVE_PROC_READDIR         (1 << FS_COMMAND_READDIR)
      #define FS_ARCHIVE_PROC_FINDPATH        (1 << FS_COMMAND_FINDPATH)
      #define FS_ARCHIVE_PROC_GETPATH         (1 << FS_COMMAND_GETPATH)
      #define FS_ARCHIVE_PROC_OPENFILEFAST    (1 << FS_COMMAND_OPENFILEFAST)
      #define FS_ARCHIVE_PROC_OPENFILEDIRECT  (1 << FS_COMMAND_OPENFILEDIRECT)
      #define FS_ARCHIVE_PROC_CLOSEFILE       (1 << FS_COMMAND_CLOSEFILE)
      #define FS_ARCHIVE_PROC_SYNC    \
          (FS_ARCHIVE_PROC_SEEKDIR | FS_ARCHIVE_PROC_READDIR |    \
           FS_ARCHIVE_PROC_FINDPATH | FS_ARCHIVE_PROC_GETPATH |   \
          FS_ARCHIVE_PROC_OPENFILEFAST | FS_ARCHIVE_PROC_OPENFILEDIRECT | FS_ARCHIVE_PROC_CLOSEFILE)

      #define FS_ARCHIVE_PROC_ACTIVATE        (1 << FS_COMMAND_ACTIVATE)
      #define FS_ARCHIVE_PROC_IDLE            (1 << FS_COMMAND_IDLE)
      #define FS_ARCHIVE_PROC_STATUS  \
          (FS_ARCHIVE_PROC_ACTIVATE | FS_ARCHIVE_PROC_IDLE)

      #define FS_ARCHIVE_PROC_ALL(~0)

## Description

The following table defines the flag bits assigned to user procedures by the `FS_SetArchiveProc` function. These also serve to specify the respective commands of the same names. Correspondence with `FSCommandType` enumerators is as follows:

`FS_ARCHIVE_PROC_ACTIVATE` | `FS_COMMAND_ACTIVATE`
`FS_ARCHIVE_PROC_IDLE` | `FS_COMMAND_IDLE`
`FS_ARCHIVE_PROC_STATUS` | everything from `FS_COMMAND_STATUS_BEGIN` up to `FS_COMMAND_STATUS_END`
`FS_ARCHIVE_PROC_READFILE` | `FS_COMMAND_READFILE`
`FS_ARCHIVE_PROC_WRITEFILE` | `FS_COMMAND_WRITEFILE`
`FS_ARCHIVE_PROC_ASYNC` | everything from `FS_COMMAND_ASYNC_BEGIN` up to `FS_COMMAND_ASYNC_END`
`FS_ARCHIVE_PROC_SEEKDIR` | `FS_COMMAND_SEEKDIR`
`FS_ARCHIVE_PROC_READDIR` | `FS_COMMAND_READDIR`
`FS_ARCHIVE_PROC_OPENFILEFAST` | `FS_COMMAND_OPENFILEFAST`
`FS_ARCHIVE_PROC_OPENFILEDIRECT` | `FS_COMMAND_OPENFILEDIRECT`
`FS_ARCHIVE_PROC_FINDPATH` | `FS_COMMAND_FINDPATH`
`FS_ARCHIVE_PROC_GETPATH` | `FS_COMMAND_GETPATH`
`FS_ARCHIVE_PROC_CLOSEFILE` | `FS_COMMAND_CLOSEFILE`
`FS_ARCHIVE_PROC_SYNC` | everything from `FS_COMMAND_SYNC_BEGIN` up to `FS_COMMAND_SYNC_END`
`FS_ARCHIVE_PROC_ALL` | All commands

## See Also

`FSArchive`, `FSCommandType`, `FS_ARCHIVE_PROC_FUNC`, `FS_SetArchiveProc`

## Revision History

07/12/2004 Added commands
06/30/2004 Initial version