# FSArchive

## 定義

  `#include <nitro/fs.h>`
  `typedef struct FSArchive
  {
  /* private: */
  union {
  char ptr[FS_ARCHIVE_NAME_LEN_MAX + 1];
  u32 pack;
  } name;
  struct FSArchive *next;
  struct FSArchive *prev;
  OSThreadQueue sync_q;
  OSThreadQueue stat_q;
  u32 flag;
  FSFileLink list_sync;
  FSFileLink list_async;
  u32 base;
  u32 fat;
  u32 fat_size;
  u32 fnt;
  u32 fnt_size;
  u32 fat_bak;
  u32 fnt_bak;
  void *load_mem;
  FS_ARCHIVE_READ_FUNC read_func;
  FS_ARCHIVE_WRITE_FUNC write_func;
  FS_ARCHIVE_READ_FUNC table_func;
  FS_ARCHIVE_PROC_FUNC proc;
  u32 proc_flag;
  } FSArchive;
  `

## 説明

アーカイブ関数で使用する構造体です。
メンバは全て内部処理でのみ使用され、直接これらを操作することは禁止されます。

## 注意

この型の内部表現は将来の拡張で変更される可能性があります。
現在の実装におけるサイズやメンバに依存したプログラミングは避けてください。

## 参照

`FS_RegisterArchiveName FS_SetArchiveProc`

## 履歴

2004/07/12 リンクエラー修正
2004/06/30 初版