⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stack3.h

📁 hl2 source code. Do not use it illegal.
💻 H
字号:
#ifndef _STACK3_H_ 

#define _STACK3_H_

#include "matrix3.h"

#define STACK_DEPTH		32		// default stack depth

class Matrix3Stack {
public:
	DllExport Matrix3Stack();
	DllExport Matrix3Stack(int depth);
	DllExport ~Matrix3Stack();

	BOOL		replace(const Matrix3 &m)
					{ stk[index] = m; return TRUE; }
	BOOL		push(const Matrix3 &m)
					{ stk[index++] = m; return index < maxDepth; }
	BOOL		dup(void)
					{ stk[index+1] = stk[index]; return ++index < maxDepth; }
	BOOL		concat(const Matrix3 &m)
					{ stk[index] = m * stk[index]; return TRUE; }
	Matrix3	&	get(void)
					{ return stk[index]; }
	Matrix3 &	pop(void)
					{ return stk[index--]; }
	BOOL		remove(void)
					{ return --index >= 0; }
	BOOL		reset(void)
					{ index = 0; stk[0].IdentityMatrix(); return TRUE; }

private:
	int			maxDepth;
	int			index;
	Matrix3 *	stk;
};

	
#endif // _STACK3_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -