//------------------------------------------------------------------------------ /** Icon ¸¦ °ü¸®ÇØÁÖ´Â ¸Þ´ÏÀú @author À¯À翵 @since [6/14/2005] @remarks - */ #ifndef ICONMGR_H #define ICONMGR_H #include "Singleton.h" #include #include "ObjKeyGenerator.h" class IconImage; typedef stdext::hash_map ICON_HASH_MAP; typedef ICON_HASH_MAP::iterator ICON_MAP_ITR; typedef std::pair ICON_MAP_PAIR; class IconMgr : public util::Singleton { public: IconMgr(void); ~IconMgr(void); public: void Create(int iMaxSize, CDrawBase * pDrawBase); void Destroy(); void AddIconCount() { m_dwIconCount++; } void RemoveIconCount() { m_dwIconCount--; } DWORD GetIconCount() { return m_dwIconCount; } IconImage * Add(DWORD dwIconID, char * pszFileName = NULL); BOOL RemoveIcon( IconImage * pIcon ); BOOL RemoveAll(); private: CDrawBase * m_pDrawBase; util::CMemoryPoolFactory * m_pIconTextureHandlePool; ICON_HASH_MAP m_hashMapIconImage; util::CObjKeyGenerator * m_pIconKeyGenerator; DWORD m_dwIconCount; }; #define ICONMGR() IconMgr::Instance() #endif // ICONMGR_H