/** @file PackageSourceManager.h @brief 包资源管理
* Copyright (c) 2007,第九城市游戏研发中心 * All rights reserved. * * 当前版本: * 作 者:和萌 * 完成日期:2009-07-23 * * 取代版本: * 作 者: * 完成日期:*/ #pragma once #include "Package.h" class CPackageSourceManager { public: CPackageSourceManager(void); ~CPackageSourceManager(void); static CPackageSourceManager* GetInstance(); void Release(); // 给定路径读取文件数据 [7/23/2009 hemeng] char* GetFileData(const string strFilePath); char* GetFileDataEx(const string strFilePath, int& iFileSize); private: // 如果map中不存在指定package则查找指定package [7/23/2009 hemeng] CPackage* _GetRootPackage(const string strFilePath); // 读取数据 [7/23/2009 hemeng] char* _ReadFileData(CPackage* pkPack, const string strFilePath); char* _ReadFileDataEx(CPackage* pkPack, const string strFilePath, int& iFileSize); // 是否存在父级包或本级包 [7/23/2009 hemeng] CPackage* _GetExistPack(const string strFilePath); private: map