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

📄 hxfprofiler.h

📁 Lido PXA270平台开发板的最新BSP,包括源代码
💻 H
字号:
/* ************************************************************************* *\
**
**    INTEL Corporation Proprietary Information
**
**    This listing is supplied under the terms of a license
**    agreement with INTEL Corporation and may not be copied
**    nor disclosed except in accordance with the terms of
**    that agreement.
**
**    Copyright (c) 2003 Intel Corporation.
**    All Rights Reserved.
**
** ************************************************************************* **
**	FILE: HXFProfiler.h
**	DESCRIPTION:
**
**	AUTHOR: Cian Montgomery
**	CREATED: January 24th, 2003
**
 *  $Date: 2/05/04 10:03p $ $Revision: 7 $
 *  $Log: /Intel_Development/Drivers/Marathon/WinCE42/opengles/HXFProfiler.h $
 * 
 * 7     2/05/04 10:03p Clmontgo
 *
 * 6     2/03/04 8:37p Clmontgo
 * Slaveport Rewrite and partial Fix(HACK)
 *
 * 5     1/30/04 10:36a Clmontgo
 *
 * 4     1/26/04 10:42p Clmontgo
 * FIX Profiler enable stuff
 *
 * 3     1/26/04 9:33p Clmontgo
 *
 * 2     1/26/04 6:46p Clmontgo
 * Added Profiler, Converted Lighting procs to Fixed point, Worked on
 * screen rotation code, Added wMMX debug Macros to Lighting.
 *
 * 1     1/24/04 11:50p Clmontgo
 *
\* ************************************************************************* */
#ifndef __HXFPROFILER_H__
#define __HXFPROFILER_H__

#ifdef HXF_PROFILE  // Entire file only included if Profiling is enabled

typedef enum _HXFProfileBin
{
	//
	HXFPROFILE_NULL,

	// State
	HXFPROFILE_STATE_FOG,
	HXFPROFILE_STATE_MATRIX,
	HXFPROFILE_STATE_LIGHT,
	HXFPROFILE_STATE_VERTEX,

	// Draw
	HXFPROFILE_DRAW_SETUP,
	HXFPROFILE_DRAW_PREPARE,
	HXFPROFILE_DRAW_VALIDATE,
	HXFPROFILE_DRAW_TNL,
	HXFPROFILE_DRAW_ASSEMBLE,
	HXFPROFILE_DRAW_CLIP,
	HXFPROFILE_DRAW_SLAVEPORT,


	HXFPROFILE_NUM_BINS,
} HXFProfileBin;

typedef enum _HXFProfileCounter
{
	//
	HXFPROFILE_COUNTER_NULL,

	// Draw
	HXFPROFILE_COUNTER_NUM_DRAWS,
	HXFPROFILE_COUNTER_NUM_PRIMITIVES,
	HXFPROFILE_COUNTER_NUM_VERTICES,

	// State
	HXFPROFILE_COUNTER_SP_BYTES,
	HXFPROFILE_COUNTER_SP_POLLS,

	HXFPROFILE_COUNTER_COUNT,

	HXFPROFILE_NUM_COUNTERS,
} HXFProfileCounter;

extern U32 g_ProfileCounters[];

void HXFProfilerStart(int);
void HXFProfilerStop(int);
void HXFProfilerTransition(int);

#define HXF_PROFILER_START(x) HXFProfilerStart(x)
#define HXF_PROFILER_STOP(x)  HXFProfilerStop(x)
#define HXF_PROFILER_TRANSITION(x) HXFProfilerTransition(x)

#define HXF_PROFILER_UPDATECOUNTERS(p, v) g_ProfileCounters[HXFPROFILE_COUNTER_NUM_DRAWS]++; \
										  g_ProfileCounters[HXFPROFILE_COUNTER_NUM_PRIMITIVES] += (p); \
										  g_ProfileCounters[HXFPROFILE_COUNTER_NUM_VERTICES] += (v);


#define HXF_PROFILER_INC_COUNTER(c, v) g_ProfileCounters[c] += v;
/* TBD
typedef enum _HXFProfileAction
{
	HXFPROFILER_ENABLE,
	HXFPROFILER_RESET,
	HXFPROFILER_SET_,
	HXFPROFILER_ENABLE_WRITE_LOG,

	HXF_PROFILE_GET_ACCUMULATOR,

} HXFProfileAction
void HXFProfiler(HXFProfileAction action, HUINT32 val, void* pdata);
*/
void HXFProfilerInitialize(void);
void HXFProfilerShutdown(void);

#else // !defined(HXF_PROFILE)

#define HXF_PROFILER_START(x)
#define HXF_PROFILER_STOP(x)
#define HXF_PROFILER_TRANSITION(x)
#define HXF_PROFILER_UPDATECOUNTERS(p, v)
#define HXF_PROFILER_INC_COUNTER(c, v)

#endif // !defined(HXF_PROFILE)

void HXFAlignedColor4S_Initialize(HXFALIGNEDCOLOR4S*);
void HXFAlignedNormal_Initialize(HXFALIGNEDNORMAL*);

#endif // __HXFPROFILER_H__
/* ************************************************************************* *\
** ************************************************************************* **
** EOF
** ************************************************************************* **
\* ************************************************************************* */

⌨️ 快捷键说明

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