Iso9660Reader class
#include <Utilities/AssetPacker/Iso9660.h>
Reads an ISO 9660 file system.
Only as much of the format as taking a volume apart again requires: the descriptors, so a generated one can keep the identity of the one it replaces, and the directory hierarchy, so the files that are not being replaced can be carried over.
Public types
- struct Entry
- One entry of a directory.
Constructors, destructors, conversion operators
Public functions
-
auto Open(ISectorReader& reader,
std::
uint32_t trackStartLba) -> bool - Reads the volume descriptors of the file system in the specified track.
-
auto ReadDirectory(std::
uint32_t lba, std:: uint32_t size, SmallVectorImpl<Entry>& entries) -> bool - Reads the entries of a directory, leaving out the
.and..records. -
auto GetPrimaryDescriptor() const -> ArrayView<const std::
uint8_t> - The primary volume descriptor, exactly as it is stored.
-
auto GetSupplementaryDescriptor() const -> ArrayView<const std::
uint8_t> - The Joliet supplementary volume descriptor, or an empty view if the volume has none.
-
auto GetRootLba() const -> std::
uint32_t - Absolute address of the root directory, of the Joliet hierarchy if the volume has one.
-
auto GetRootSize() const -> std::
uint32_t - Size of the extent holding the root directory.
-
auto GetVolumeSpaceSize() const -> std::
uint32_t - Number of logical sectors the volume declares, which is not always the whole track.
Function documentation
bool Jazz2:: AssetPacker:: Iso9660Reader:: Open(ISectorReader& reader,
std:: uint32_t trackStartLba)
Reads the volume descriptors of the file system in the specified track.
| Parameters | |
|---|---|
| reader | Provides the sectors of the track |
| trackStartLba | Absolute address the track begins at, which its system area is relative to |