DXUT11框架浅析(7)--全局变量管理
来源:互联网 发布:邪恶漫画之知子继母 编辑:程序博客网 时间:2024/05/16 16:06
DXUT11框架浅析(7)--全局变量管理
DXUT11所有状态、指针等需要全局使用的变量都存放在类DXUTState中。
1. DXUTState类
该类只有一个成员变量m_state。结构体STATE中大致包括三类成员:一是存放各种D3D接口指针,如IDirect3D9、ID3D11Device等;二是存放各种状态、条件变量;三是存放回调(callback)函数以及每个函数的用户上下文(context,比如多个线程引发回调,用这个区别不同的对象回调)。
该类的方法主要有创建Create()和注销Destroy()。此外都是Get*()和Set*()读写属性值的方法。为了缩减代码量,使用了宏GET_SET_ACCESSOR。
2. 使用DXUTState读写变量
在DXUT.h中,又定义了一系列DXUTGet*()、DXUTSet*()、DXUTIs*()等方法来实现对一个全局的g_pDXUTState对象的调用,从而实现读写各种全局变量。
DXUTCreateState()
为全局变量g_pDXUTState创建对象。
DXUTDestroyState()
删除g_pDXUTState对象。
class DXUTMemoryHelper
在构建函数里调用DXUTCreateState,在析构函数里调用DXUTDestroyState,实现简单的对对象g_pDXUTState的内存管理。
DXUTState& GetDXUTState()
得到全局变量g_pDXUTState的指针。
- DXUT11框架浅析(7)--全局变量管理
- DXUT11框架浅析(0)--预览
- DXUT11框架浅析(8)--CGrowableArray
- DXUT11框架浅析(9)--DXUTDevice9
- DXUT11框架浅析(10)--DXUTDevice11
- DXUT11框架浅析(12)--CDXUTTimer
- DXUT11框架浅析(1)--错误处理
- DXUT11框架浅析(2)--回调函数
- DXUT11框架浅析(4)--调试相关
- DXUT11框架浅析(5)--基础函数
- DXUT11框架浅析(6)--功能函数
- DXUT11框架浅析(11)--枚举设备相关函数
- DXUT11框架浅析(3)--运行时(Run-Time)动态链接D3D的DLL
- 局部和全局变量浅析
- 浅析Python中的Python全局变量
- 浅析Python中的Python全局变量
- 浅析Python中的Python全局变量
- 浅析Python中的Python全局变量
- android iphone手机分辨率尺寸比例整理
- 《程序员》 -- 解读游戏设计的奥秘——《The Art of Game Design》作者Jesse Schell访谈
- HDU 4712 Hamming Distance
- JAVA TCP/IP Socket实例
- 《Linux命令行与shell脚本编程大全》 第十九章 学习笔记
- DXUT11框架浅析(7)--全局变量管理
- [动态规划-1] 最长递增子序列-Longest Increasing Subsequence
- setsockopt与getsockopt的用法
- OSG-3.0.0在vs2008下的配置与安装
- perl中的隐藏变量
- #pragma
- 移动用户体验设计:iOS APP体验设计
- 工厂模式
- struts2注解编程返回json