/** @file JCImageManager.h @brief @author James @version 1.0 @date 2016_5_13 */ #ifndef __JCImageManager_H__ #define __JCImageManager_H__ #include "../Image/JCImage.h" #include #include #include #include /** * @brief */ namespace laya { class JCImageManager { public: typedef std::vector VectorImage; typedef VectorImage::iterator VectorImageIter; typedef std::vector VectorImageID; typedef VectorImageID::iterator VectorImageIDIter; typedef std::map MapImage; typedef MapImage::iterator MapImageIter; public: /** @brief构造函数 */ JCImageManager(); /** @brief析构函数 */ ~JCImageManager(); void setImage( int nID,JCImage* pImage ); bool deleteImage( int nID ); void clearAllImage(); JCImage* getImage( int nID ); void resetRenderThread(); void printCorpseImages( const char* sFileName ); public: int getImageID(); void resetJSThread(); void removeImageID(int nID); void clearImageIDs(); void removeImageFromMap( int nID ); void update(int nFrameCount); void setReleaseSpaceTime(int nTime); private: void _batchHandleDeleteImage(); bool _deleteImage(int nID); public: VectorImageID m_vImageIDs; /// m_vDeleteList; ///<删除列表 }; } #endif //__JCImageManager_H__ //-----------------------------END FILE--------------------------------