1#ifndef SEAD_CAFE_FSA_FILEDEVICE_H_
2#define SEAD_CAFE_FSA_FILEDEVICE_H_
6#include <filedevice/seadFileDevice.h>
7#include <prim/seadRuntimeTypeInfo.h>
8#include <prim/seadSafeString.h>
82static_assert(
sizeof(
CafeFSAFileDevice) == 0x6C,
"sead::CafeFSAFileDevice size mismatch");
Definition seadCafeFSAFileDeviceCafe.h:85
CafeContentFileDevice()
Definition seadCafeFSAFileDeviceCafe.cpp:466
virtual ~CafeContentFileDevice()
Definition seadCafeFSAFileDeviceCafe.h:90
Definition seadCafeFSAFileDeviceCafe.h:13
CafeFSAFileDevice(const SafeString &default_drive_name, const SafeString &cwd_path)
Definition seadCafeFSAFileDeviceCafe.cpp:10
virtual FileDevice * doOpenDirectory_(DirectoryHandle *handle, const SafeString &dirname)
Definition seadCafeFSAFileDeviceCafe.cpp:323
void changeDir(const char *path)
Definition seadCafeFSAFileDeviceCafe.h:20
FSStatus mLastRawError
Definition seadCafeFSAFileDeviceCafe.h:76
virtual bool doSeek_(FileHandle *handle, s32 offset, SeekOrigin origin)
Definition seadCafeFSAFileDeviceCafe.cpp:164
DirHandleInner * getDirHandleInner_(DirectoryHandle *handle)
Definition seadCafeFSAFileDeviceCafe.cpp:459
virtual FileDevice * doOpen_(FileHandle *handle, const SafeString &filename, FileOpenFlag flag)
Definition seadCafeFSAFileDeviceCafe.cpp:41
FSRetFlag mFSOpenRetFlag
Definition seadCafeFSAFileDeviceCafe.h:77
virtual void formatPathForFSA_(BufferedSafeString *out, const SafeString &path) const
Definition seadCafeFSAFileDeviceCafe.cpp:436
FSRetFlag mFSReadRetFlag
Definition seadCafeFSAFileDeviceCafe.h:79
virtual bool doGetFileSize_(u32 *size, const SafeString &path)
Definition seadCafeFSAFileDeviceCafe.cpp:217
virtual ~CafeFSAFileDevice()
Definition seadCafeFSAFileDeviceCafe.h:18
virtual RawErrorCode doGetLastRawError_() const
Definition seadCafeFSAFileDeviceCafe.cpp:422
FSClient * getUsableFSClient_() const
Definition seadCafeFSAFileDeviceCafe.cpp:444
const char * getCWD()
Definition seadCafeFSAFileDeviceCafe.h:25
virtual bool doGetCurrentSeekPos_(u32 *pos, FileHandle *handle)
Definition seadCafeFSAFileDeviceCafe.cpp:207
virtual bool doMakeDirectory_(const SafeString &path, u32 permission)
Definition seadCafeFSAFileDeviceCafe.cpp:402
virtual bool doWrite_(u32 *write_size, FileHandle *handle, const u8 *buf, u32 size)
Definition seadCafeFSAFileDeviceCafe.cpp:134
virtual bool doCloseDirectory_(DirectoryHandle *handle)
Definition seadCafeFSAFileDeviceCafe.cpp:346
FSClient * mFSClient
Definition seadCafeFSAFileDeviceCafe.h:80
virtual bool doIsAvailable_() const
Definition seadCafeFSAFileDeviceCafe.h:33
const char * mCWDPath
Definition seadCafeFSAFileDeviceCafe.h:75
virtual bool doRead_(u32 *read_size, FileHandle *handle, u8 *buf, u32 size)
Definition seadCafeFSAFileDeviceCafe.cpp:104
virtual bool doGetFileSize_(u32 *size, FileHandle *handle)
Definition seadCafeFSAFileDeviceCafe.cpp:240
FileHandleInner * getFileHandleInner_(FileHandle *handle)
Definition seadCafeFSAFileDeviceCafe.cpp:452
virtual bool doClose_(FileHandle *handle)
Definition seadCafeFSAFileDeviceCafe.cpp:88
static bool setCurrentDirectory(const SafeString &path)
Definition seadCafeFSAFileDeviceCafe.cpp:26
FSRetFlag mFSCloseRetFlag
Definition seadCafeFSAFileDeviceCafe.h:78
virtual void doResolvePath_(BufferedSafeString *out, const SafeString &path) const
Definition seadCafeFSAFileDeviceCafe.cpp:428
virtual bool doIsExistFile_(bool *is_exist, const SafeString &path)
Definition seadCafeFSAFileDeviceCafe.cpp:261
virtual bool doReadDirectory_(u32 *read_num, DirectoryHandle *handle, DirectoryEntry *entry, u32 num)
Definition seadCafeFSAFileDeviceCafe.cpp:364
virtual bool doIsExistDirectory_(bool *is_exist, const SafeString &path)
Definition seadCafeFSAFileDeviceCafe.cpp:292
Definition seadCafeFSAFileDeviceCafe.h:117
virtual ~CafeFSNativePathFileDevice()
Definition seadCafeFSAFileDeviceCafe.h:122
CafeFSNativePathFileDevice()
Definition seadCafeFSAFileDeviceCafe.cpp:471
virtual void formatPathForFSA_(BufferedSafeString *out, const SafeString &path) const
Definition seadCafeFSAFileDeviceCafe.cpp:476
Definition seadCafeFSAFileDeviceCafe.h:103
virtual ~CafeHostIOFileDevice()
Definition seadCafeFSAFileDeviceCafe.h:108
virtual void formatPathForFSA_(BufferedSafeString *out, const SafeString &path) const
void convertPathWinToFSA_(char *, u32, const char *) const
Definition seadCafeFSAFileDeviceCafe.h:94
virtual ~CafeSDFileDevice()
Definition seadCafeFSAFileDeviceCafe.h:99
Definition seadFileDevice.h:421
Definition seadFileDevice.h:56
SeekOrigin
Definition seadFileDevice.h:69
FileOpenFlag
Definition seadFileDevice.h:61
Definition seadFileDevice.h:376
Definition seadAssert.h:44
s32 RawErrorCode
Definition seadFileDevice.h:14
SafeStringBase< char > SafeString
Definition seadSafeString.h:409
BufferedSafeStringBase< char > BufferedSafeString
Definition seadSafeString.h:411
#define SEAD_RTTI_OVERRIDE(CLASS, BASE)
Definition seadRuntimeTypeInfo.h:96
Definition seadCafeFSAFileDeviceCafe.h:66
FSDirHandle mHandle
Definition seadCafeFSAFileDeviceCafe.h:67
Definition seadCafeFSAFileDeviceCafe.h:60
FSFilePosition mPosition
Definition seadCafeFSAFileDeviceCafe.h:62
FSFileHandle mHandle
Definition seadCafeFSAFileDeviceCafe.h:61
Definition seadFileDevice.h:443