/* ========================================================================== * ÀÛ ¼º ÀÚ : À̼ø±Ô * ÀÛ ¼º ÀÏ : 2006.12.04 * ³» ¿ë : ÆÄÀÏ ½Ã½ºÅÛ * ÁÖÀÇ»çÇ× : *===========================================================================*/ #pragma once class cFileToRead; class cFileToWrite; class cMemFileToRead; /// ÆÄÀÏ ½Ã½ºÅÛ class cFileSystem { static cFileSystem* mSingleton; public: cFileSystem(); ~cFileSystem(); /// Àбâ Àü¿ë ÆÄÀÏ ¿­±â virtual cFileToRead* OpenFileToRead( const cString& pathName ); virtual cMemFileToRead* OpenMemFileToRead( const cString& pathName ); cFileToRead* OpenFileToRead_NoPack( const cString& pathName ); cMemFileToRead* OpenMemFileToRead_NoPack( const cString& pathName ); /// ¾²±â Àü¿ë ÆÄÀÏ ¿­±â virtual cFileToWrite* OpenFileToWrite( const cString& pathName ); virtual bool FileExist( const cString& pathName ); void WriteLoadLog( cString pathName ); tHashSet& GetLog(){ return mLoadFileList; } public: /// ´ÜÀÏü¸¦ ¸®ÅÏ static cFileSystem* GetSingleton(); private: tHashSet mLoadFileList; FILE* mfileStream; }; inline cFileSystem* cFileSystem::GetSingleton() { return mSingleton; } #define FILESYSTEM cFileSystem::GetSingleton()