## Struct volume_desc

hamigaki::archivers::iso::volume_desc —

ボリューム記述子を表す構造体

## Synopsis

    struct volume_desc {

      // queries
      bool is_joliet() const;
      bool is_rock_ridge() const;
      bool is_enhanced() const;

      // modifiers
      void set_joliet();
      void set_enhanced();

      unsigned level;
      rrip_type rrip;
      boost::uint8_t type;
      boost::uint8_t version;
      boost::uint8_t flags;
      std::string system_id;
      std::string volume_id;
      std::string escape_sequences;
      boost::uint32_t path_table_size;
      boost::uint32_t l_path_table_pos;
      boost::uint32_t l_path_table_pos2;
      boost::uint32_t m_path_table_pos;
      boost::uint32_t m_path_table_pos2;
      directory_record root_record;
      std::string volume_set_id;
      std::string publisher_id;
      std::string data_preparer_id;
      std::string application_id;
      boost::filesystem::path copyright_file_id;
      boost::filesystem::path abstract_file_id;
      boost::filesystem::path bibliographic_file_id;
      boost::uint8_t file_structure_version;
      char application_use[512];
    };

## Description

メンバ変数 | 意味 | 規定値
--- | --- | ---
level | ISO 9660 情報交換水準 | 1u
rrip | Rock Ridge 拡張の種類 | rrip_none
type | ボリューム記述子の種類 | 1u
version | ボリューム記述子のバージョン | 1u
flags | ボリュームフラグ | 0u
system_id | システム識別子 |
volume_id | ボリューム識別子 |
escape_sequences | エスケープシーケンス |
path_table_size | パステーブルのサイズ (読み込みのみ) |
l_path_table_pos | L型パステーブルの位置 (読み込みのみ) |
l_path_table_pos2 | 任意L型パステーブルの位置 (読み込みのみ) |
m_path_table_pos | M型パステーブルの位置 (読み込みのみ) |
m_path_table_pos2 | 任意M型パステーブルの位置 (読み込みのみ) |
root_record | ルートディレクトリ用ディレクトリレコード (読み込みのみ) |
volume_set_id | ボリューム集合識別子 |
publisher_id | 出版社識別子 |
data_preparer_id | データ編集者識別子 |
application_id | 応用システム識別子 |
copyright_file_id | 著作権ファイル識別子 |
abstract_file_id | 抄録ファイル識別子 |
bibliographic_file_id | 書誌ファイル識別子 |
file_structure_version | ファイル構造のバージョン | 1u
application_use | 応用システム用 |

### `volume_desc` queries

1.     bool is_joliet() const;

   Returns: | ボリュームがJoliet拡張に対応していれば`true`、それ以外なら`false`

2.     bool is_rock_ridge() const;

   Returns: | ボリュームがRock Ridgeに対応していれば`true`、それ以外なら`false`

3.     bool is_enhanced() const;

   Returns: | ボリュームがISO 9660:1999の拡張ボリューム記述子に対応していれば`true`、それ以外なら`false`

### `volume_desc` modifiers

1.     void set_joliet();

   Effects: | Joliet拡張用の設定を行う

2.     void set_enhanced();

   Effects: | 拡張ボリューム記述子用の設定を行う

| 製作著作 © 2006, 2007 Takeshi Mouri