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

📄 iceinstrumenttrace.h

📁 使用stl技术,(还没看,是听说的)
💻 H
字号:
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Include Guard
#ifndef __ICEINSTRUMENTTRACE_H__
#define __ICEINSTRUMENTTRACE_H__

	class ICECORE_API InstrumentTrace
	{
	#ifndef NO_INSTRUMENTATION
		private:
			bool	dataLinked;
			void*	data;

			void	LinkData();

			// Public interface.
	public:
			inline_			InstrumentTrace(): dataLinked(false), data(0)		{}		// Public constructor.
			inline_			~InstrumentTrace()									{}		// Public destructor.

			inline_	void	Set(int i, void *_data, int size)	{ if (!dataLinked) LinkData(); if (data) memcpy((int*)data + i, _data, size);	}
			inline_	void	Set(int i, int val)					{ if (!dataLinked) LinkData(); if (data) ((int*)data)[i] = val;					}
			inline_	int		Get(int i)							{ if (!dataLinked) LinkData(); if (data) return ((int*)data)[i]; else return 0;	}

	#else

	public:
			inline_	void	Set(int i, void *data, int size)	{}
			inline_	void	Set(int i, int val)					{}
			inline_	int		Get(int i)							{ return 0; }
	#endif
	};

#endif // __ICEINSTRUMENTTRACE_H__

⌨️ 快捷键说明

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