the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
at main 57 lines 2.3 kB view raw
1#pragma once 2 3#include "FileHeader.h" 4#include "ConsoleSavePath.h" 5 6class ConsoleSaveFile 7{ 8public: 9 virtual ~ConsoleSaveFile() {}; 10 11 virtual FileEntry *createFile( const ConsoleSavePath &fileName ) = 0; 12 virtual void deleteFile( FileEntry *file ) = 0; 13 virtual void setFilePointer( FileEntry *file,LONG lDistanceToMove, PLONG lpDistanceToMoveHigh,DWORD dwMoveMethod) = 0; 14 virtual BOOL writeFile( FileEntry *file, LPCVOID lpBuffer, DWORD nNumberOfBytesToWrite, LPDWORD lpNumberOfBytesWritten) = 0; 15 virtual BOOL zeroFile(FileEntry *file, DWORD nNumberOfBytesToWrite, LPDWORD lpNumberOfBytesWritten) = 0; 16 virtual BOOL readFile( FileEntry *file, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead ) = 0; 17 virtual BOOL closeHandle( FileEntry *file ) = 0; 18 virtual void finalizeWrite() = 0; 19 virtual void tick() {}; 20 21 virtual bool doesFileExist(ConsoleSavePath file) = 0; 22 23 virtual void Flush(bool autosave, bool updateThumbnail = true) = 0; 24 25#ifndef _CONTENT_PACKAGE 26 virtual void DebugFlushToFile(void *compressedData = NULL, unsigned int compressedDataSize = 0) = 0; 27#endif 28 virtual unsigned int getSizeOnDisk() = 0; 29 virtual wstring getFilename() = 0; 30 virtual vector<FileEntry *> *getFilesWithPrefix(const wstring &prefix) = 0; 31 virtual vector<FileEntry *> *getRegionFilesByDimension(unsigned int dimensionIndex) = 0; 32 33#if defined(__PS3__) || defined(__ORBIS__) || defined(__PSVITA__) 34 virtual wstring getPlayerDataFilenameForLoad(const PlayerUID& pUID) = 0; 35 virtual wstring getPlayerDataFilenameForSave(const PlayerUID& pUID) = 0; 36 virtual vector<FileEntry *> *getValidPlayerDatFiles() = 0; 37#endif //__PS3__ 38 39 virtual int getSaveVersion() = 0; 40 virtual int getOriginalSaveVersion() = 0; 41 42 virtual void LockSaveAccess() = 0; 43 virtual void ReleaseSaveAccess() = 0; 44 45 virtual ESavePlatform getSavePlatform() = 0; 46 virtual bool isSaveEndianDifferent() = 0; 47 virtual void setLocalPlatform() = 0; 48 virtual void setPlatform(ESavePlatform plat) = 0; 49 virtual ByteOrder getSaveEndian() = 0; 50 virtual ByteOrder getLocalEndian() = 0; 51 virtual void setEndian(ByteOrder endian) = 0; 52 53 virtual void ConvertRegionFile(File sourceFile) = 0; 54 virtual void ConvertToLocalPlatform() = 0; 55 56 virtual void *getWritePointer(FileEntry *file) { return NULL; } 57};