20 explicit RIFF(std::vector<std::byte>&& riffData, uint32_t type_);
22 explicit RIFF(std::span<const std::byte> riffData, uint32_t type_);
24 explicit RIFF(
const std::filesystem::path& riffPath, uint32_t type_);
26 [[nodiscard]]
explicit operator bool()
const;
32 [[nodiscard]]
const std::vector<std::pair<uint32_t, std::span<std::byte>>>&
getChunks()
const;
34 [[nodiscard]]
bool hasChunk(uint32_t chunkType)
const;
36 [[nodiscard]] std::vector<std::byte>
getFirstChunk(uint32_t chunkType)
const;
38 [[nodiscard]]
bool hasNthChunk(uint32_t chunkType, uint32_t n)
const;
40 [[nodiscard]] std::vector<std::byte>
getNthChunk(uint32_t chunkType, uint32_t n)
const;
45 std::vector<std::pair<uint32_t, std::span<std::byte>>>
chunks;
47 std::vector<std::byte>
data;
std::vector< std::byte > getFirstChunk(uint32_t chunkType) const
std::vector< std::byte > data
const std::vector< std::pair< uint32_t, std::span< std::byte > > > & getChunks() const
std::vector< std::byte > getNthChunk(uint32_t chunkType, uint32_t n) const
bool hasChunk(uint32_t chunkType) const
uint32_t getSignature() const
RIFF(uint32_t type, uint32_t signature=RIFF_SIGNATURE)
std::vector< std::pair< uint32_t, std::span< std::byte > > > chunks
bool hasNthChunk(uint32_t chunkType, uint32_t n) const
constexpr auto FFIR_SIGNATURE
constexpr auto RIFX_SIGNATURE
constexpr auto RIFF_SIGNATURE
consteval uint32_t makeFourCC(const char fourCC[4])
Creates a FourCC identifier from a string of 4 characters.