29 std::vector<SymbolRecordEntry> entries;
41 std::vector<SequenceArchiveSymbolRecordEntry> entries;
45 u32 seq_record_offset;
46 u32 seq_arc_record_offset;
47 u32 bnk_record_offset;
48 u32 wav_arc_record_offset;
49 u32 player_record_offset;
50 u32 group_record_offset;
51 u32 strm_player_record_offset;
52 u32 strm_record_offset;
88 u16 alloc_ch_bit_flag;
119 std::vector<InfoRecordEntry<T>> entries;
123 u32 seq_record_offset;
124 u32 seq_arc_record_offset;
125 u32 bnk_record_offset;
126 u32 wav_arc_record_offset;
127 u32 player_record_offset;
128 u32 group_record_offset;
129 u32 strm_player_record_offset;
130 u32 strm_record_offset;
148 static constexpr auto SSEQVirtualDirectoryName =
"sseq";
149 static constexpr auto SSARVirtualDirectoryName =
"ssar";
150 static constexpr auto SBNKVirtualDirectoryName =
"sbnk";
151 static constexpr auto SWARVirtualDirectoryName =
"swar";
152 static constexpr auto STRMVirtualDirectoryName =
"strm";
154 inline static std::string MakeSWARPath(
const std::string &swar_file) {
155 return SWARVirtualDirectoryName + (
"/" + swar_file);
161 FileAllocationTableBlock fat;
164 SymbolRecord seq_symb_record;
165 SequenceArchiveSymbolRecord seq_arc_symb_record;
166 SymbolRecord bnk_symb_record;
167 SymbolRecord wav_arc_symb_record;
168 SymbolRecord player_symb_record;
169 SymbolRecord group_symb_record;
170 SymbolRecord strm_player_symb_record;
171 SymbolRecord strm_symb_record;
173 InfoRecord<SequenceInfo> seq_info_record;
174 InfoRecord<SequenceArchiveInfo> seq_arc_info_record;
175 InfoRecord<BankInfo> bnk_info_record;
176 InfoRecord<WaveArchiveInfo> wav_arc_info_record;
177 InfoRecord<PlayerInfo> player_info_record;
178 InfoRecord<GroupInfo> group_info_record;
179 InfoRecord<StreamPlayerInfo> strm_player_info_record;
180 InfoRecord<StreamInfo> strm_info_record;
181 std::vector<FileAllocationTableRecord> fat_records;
184 SDAT(
const SDAT&) =
delete;
186 inline bool HasSymbols() {
187 return this->header.symb_size > 0;
190 Result LocateFile(
const std::string &path, u32 &out_file_id);
192 Result ValidateImpl(
const std::string &path, std::shared_ptr<fs::FileHandle> file_handle,
const fs::FileCompression comp)
override;
193 Result ReadImpl(
const std::string &path, std::shared_ptr<fs::FileHandle> file_handle,
const fs::FileCompression comp)
override;
195 Result SaveFileSystem()
override;
Definition fmt_SDAT.hpp:111
Definition fmt_SDAT.hpp:32
Definition fmt_SDAT.hpp:22