📄 framemanager.h
字号:
//--------------------------------------------------
// Desc: Frame Manager
// Date: 2006.12.7 /update
// Author: artsylee
//
// Copyright (C) 2006 artsylee
//
//--------------------------------------------------
#ifndef _FRAMEMANAGER_
#define _FRAMEMANAGER_
#include <map>
#include "Frames.h"
typedef DWORD FrameHandle;
#define BASEHANDLE 5000
#define UPDATETIME 3000
#define MAXEXIST 5000
#define INVALID_HANDLE 0x00
//---------------------------------------------------
// 指定的句柄范围是1~5000,非指定的为5000+
// 指定的为非共享纹理,非指定的为共享纹理
// 会有同文件名的多个纹理,释放只提供句柄操作不提供文件名操作
// QueryHandle为共享纹理,返回值5000+
//---------------------------------------------------
class ASE_DLL CFrameManager
{
public:
CFrameManager();
~CFrameManager();
FrameHandle LoadFrame(const char *szFilename, MemoryMode mode = MM_AUTO);
FrameHandle LoadFrameDesc(const char *szFilename);
FrameHandle InsertFrame(CFrames *pFrame, MemoryMode mode = MM_AUTO);
bool LoadFrame(FrameHandle hFrm, const char *szFilename, MemoryMode mode = MM_AUTO);
bool LoadFrameDesc(FrameHandle hFrm, const char *szFilename);
bool BatchLoad(const char *szIniFile);
void ReleaseFrame(FrameHandle frmHandle);
void DestroyFrame(FrameHandle frmHandle);
void DestroyAll(void);
// 外部使用接口
CTexture* GetTexture(FrameHandle frmHandle, DWORD index);
CFrames* GetFrame(FrameHandle frmHandle);
void Update(void);
// D3DPOOL_DEFAULT的资源在丢失设备时要重新加载
private:
FrameHandle CreateHandle(void);
FrameHandle QueryHandle(const char *szFilename);
private:
std::map<FrameHandle, CFrames*> m_FrameMap;
DWORD m_CurHandle;
DWORD m_UpdateTime;
};
#endif // _FRAMEMANAGER_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -