2 #include "FileHandle.h" 4 #include "IAttributeFields.h" 14 ArchiveFileFindItem(
const char* sFilename) : filename(sFilename), hashValue(
nullptr), hashlower(
nullptr) {};
15 ArchiveFileFindItem(
const char* sFilename,
const uint32* uHash,
const uint32* uHashLower) : filename(sFilename), hashValue(uHash), hashlower(uHashLower) {};
18 const uint32* hashValue;
19 const uint32* hashlower;
27 CArchive(
void):m_archiveHandle(NULL), m_bOpened(
false),m_nPriority(0){};
31 inline static DWORD TypeID() {
return 0;};
32 virtual DWORD GetType(){
return TypeID();};
34 virtual const std::string& GetIdentifier();
36 const string& GetArchiveName()
const;
41 virtual bool IsArchive(
const std::string& sFilename);
46 virtual bool Open(
const string& sArchiveName,
int nPriority);
54 virtual bool DoesFileExist(
const string& filename)=0;
75 virtual DWORD GetFileSize(
FileHandle& handle) = 0;
78 virtual bool ReadFile(
FileHandle& handle,LPVOID lpBuffer,DWORD nNumberOfBytesToRead,LPDWORD lpNumberOfBytesRead) = 0;
86 virtual bool ReadFileRaw(
FileHandle& handle,LPVOID* lppBuffer,LPDWORD pnCompressedSize, LPDWORD pnUncompressedSize){
return false;};
88 virtual bool WriteFile(
FileHandle& handle,LPCVOID lpBuffer,DWORD nNumberOfBytesToWrite,LPDWORD lpNumberOfBytesWritten){
return false;};
119 virtual bool IsIgnoreCase()
const {
return false; };
file archiver base class.
Definition: Archive.h:24
a file handle in a Archive
Definition: FileHandle.h:13
Definition: handle.hpp:33
different physics engine has different winding order.
Definition: EventBinding.h:32
virtual bool CreateNewFile(const char *filename, FileHandle &handle, bool bAutoMakeFilePath=true)
create a new file for writing
Definition: Archive.h:96
virtual void FindFiles(CSearchResult &result, const string &sRootPath, const string &sFilePattern, int nSubLevel)
this is a recursive function.
Definition: Archive.h:117
virtual bool ReadFileRaw(FileHandle &handle, LPVOID *lppBuffer, LPDWORD pnCompressedSize, LPDWORD pnUncompressedSize)
read the raw (may be compressed file)
Definition: Archive.h:86
virtual void Close()
close archive
Definition: Archive.h:49
virtual void SetRootDirectory(const string &filename)
set root directory
Definition: Archive.h:102
virtual void SetBaseDirectory(const char *filename)
set the base directory to be removed from the relative path of all files in the zip file...
Definition: Archive.h:107
A common interface for all classes implementing IAttributeFields By implementing this class's virtual...
Definition: IAttributeFields.h:59
string m_filename
file name
Definition: Archive.h:119
it represents the search result.
Definition: FileSearchResult.h:24