1 #ifndef UGDK_FILESYSTEM_FILE_H_
2 #define UGDK_FILESYSTEM_FILE_H_
10 namespace filesystem {
26 virtual std::string
filename()
const = 0;
54 virtual std::size_t
ReadRaw(
void* ptr, std::size_t
size, std::size_t maxnum) = 0;
64 std::size_t
Read(T* ptr, std::size_t maxnum = 1) {
65 return ReadRaw(ptr,
sizeof(T), maxnum);
75 virtual std::size_t
WriteRaw(
const void* ptr, std::size_t
size, std::size_t num) = 0;
85 std::size_t
Write(
const T* ptr, std::size_t num = 1) {
86 return WriteRaw(ptr,
sizeof(T), num);
93 virtual bool Close() = 0;
120 char*
fgets(
char* str,
int count);
129 #endif // UGDK_FILESYSTEM_FILE_H_
std::size_t Read(T *ptr, std::size_t maxnum=1)
Definition: file.h:64
int64_t int64
Definition: types.h:19
virtual std::size_t ReadRaw(void *ptr, std::size_t size, std::size_t maxnum)=0
virtual int64 Seek(int64 offset, SeekPositions whence)=0
virtual std::string filename() const =0
std::string GetContents()
Definition: animation.h:11
char * fgets(char *str, int count)
SeekPositions
Definition: file.h:12
std::size_t Write(const T *ptr, std::size_t num=1)
Definition: file.h:85
virtual ~File()
Definition: file.h:18
virtual std::size_t WriteRaw(const void *ptr, std::size_t size, std::size_t num)=0
virtual int64 size() const =0
File()
Definition: file.h:123