#pragma once #include #include #include #include struct MyFileInfo { int m_MemoryNum; int m_FileSize; std::string m_FileName; MyFileInfo(int t_MemoryNum, int t_FileSize, std::string t_FileName){ m_MemoryNum = t_MemoryNum; m_FileSize = t_FileSize; m_FileName = t_FileName; } }; class CArchive { public: CArchive(); ~CArchive(); int LoadArchive(std::string t_ArchiveFileName); const char* GetPointer(std::string t_FileName); const char* GetPointer(int t_FileNum); int GetFileSize(std::string t_FileName); int GetFileSize(int t_FileNum); int GetFileNum(); const char* GetFileName(int t_FileNum); private: void operator =(const CArchive& src); CArchive(const CArchive& src); HANDLE m_FileHandle; HANDLE m_MappedFileHandle; int m_HeaderSize; char* m_pFile; std::map m_FileNameMap;//ファイル名とファイルのメモリ位置のmap。 std::vector m_FileDataVec; };