1#ifndef SEAD_ANY_FILEDEVICE_H_
2#define SEAD_ANY_FILEDEVICE_H_
4#include <container/seadPtrArray.h>
5#include <filedevice/seadFileDevice.h>
61static_assert(
sizeof(
AnyFileDevice) == 0x64,
"sead::AnyFileDevice size mismatch");
Definition seadAnyFileDevice.h:10
u8 * doLoad_(LoadArg &arg) override
Definition seadAnyFileDevice.cpp:66
bool doCloseDirectory_(DirectoryHandle *handle) override
Definition seadAnyFileDevice.cpp:192
void resolveDirectoryPath(BufferedSafeString *out, const SafeString &path) const override
Definition seadAnyFileDevice.cpp:325
FileDevice * doOpenDirectory_(DirectoryHandle *handle, const SafeString &dirname) override
Definition seadAnyFileDevice.cpp:172
bool doIsExistFile_(bool *is_exist, const SafeString &path) override
Definition seadAnyFileDevice.cpp:156
bool doIsExistDirectory_(bool *is_exist, const SafeString &path) override
Definition seadAnyFileDevice.cpp:164
FileDevice * mLastFileDevice
Definition seadAnyFileDevice.h:58
RawErrorCode doGetLastRawError_() const override
Definition seadAnyFileDevice.cpp:277
bool doMakeDirectory_(const SafeString &path, u32 permission) override
Definition seadAnyFileDevice.cpp:263
void resolveFilePath(BufferedSafeString *out, const SafeString &path) const override
Definition seadAnyFileDevice.cpp:313
bool pushBack(FileDevice *device)
Definition seadAnyFileDevice.cpp:23
bool doGetFileSize_(u32 *size, FileHandle *handle) override
Definition seadAnyFileDevice.cpp:150
AnyFileDevice(s32 limit_num, Heap *heap, s32 alignment=4)
Definition seadAnyFileDevice.cpp:11
bool doWrite_(u32 *write_size, FileHandle *handle, const u8 *buf, u32 size) override
Definition seadAnyFileDevice.cpp:122
FileDeviceList mFileDeviceList
Definition seadAnyFileDevice.h:57
void traceFilePath(const SafeString &path) const override
Definition seadAnyFileDevice.cpp:285
FileDevice * findFileDeviceByFile_(const SafeString &path) const
Definition seadAnyFileDevice.cpp:76
PtrArray< FileDevice > FileDeviceList
Definition seadAnyFileDevice.h:14
bool doGetFileSize_(u32 *size, const SafeString &path) override
Definition seadAnyFileDevice.cpp:140
~AnyFileDevice() override
Definition seadAnyFileDevice.cpp:18
bool pushFront(FileDevice *device)
Definition seadAnyFileDevice.cpp:34
const FileDeviceList & getFileDeviceList() const
Definition seadAnyFileDevice.h:30
bool doClose_(FileHandle *handle) override
Definition seadAnyFileDevice.cpp:110
bool isMatchDevice_(const HandleBase *handle) const override
Definition seadAnyFileDevice.cpp:268
bool doRead_(u32 *read_size, FileHandle *handle, u8 *buf, u32 size) override
Definition seadAnyFileDevice.cpp:116
void traceDirectoryPath(const SafeString &path) const override
Definition seadAnyFileDevice.cpp:299
bool doSeek_(FileHandle *handle, s32 offset, SeekOrigin origin) override
Definition seadAnyFileDevice.cpp:128
bool doIsAvailable_() const override
Definition seadAnyFileDevice.cpp:57
bool doReadDirectory_(u32 *read_num, DirectoryHandle *handle, DirectoryEntry *entry, u32 num) override
Definition seadAnyFileDevice.cpp:199
bool doGetCurrentSeekPos_(u32 *pos, FileHandle *handle) override
Definition seadAnyFileDevice.cpp:134
FileDevice * findFileDeviceByDirectory_(const SafeString &path) const
Definition seadAnyFileDevice.cpp:88
FileDevice * doOpen_(FileHandle *handle, const SafeString &filename, FileOpenFlag flag) override
Definition seadAnyFileDevice.cpp:100
bool erase(FileDevice *device)
Definition seadAnyFileDevice.cpp:45
Definition seadFileDevice.h:421
Definition seadFileDevice.h:56
SeekOrigin
Definition seadFileDevice.h:69
FileOpenFlag
Definition seadFileDevice.h:61
Definition seadFileDevice.h:376
Definition seadFileDevice.h:20
Definition seadPtrArray.h:119
Definition seadAssert.h:44
s32 RawErrorCode
Definition seadFileDevice.h:14
SafeStringBase< char > SafeString
Definition seadSafeString.h:420
BufferedSafeStringBase< char > BufferedSafeString
Definition seadSafeString.h:422
#define SEAD_RTTI_OVERRIDE(CLASS, BASE)
Definition seadRuntimeTypeInfo.h:96
Definition seadFileDevice.h:443
Definition seadFileDevice.h:83