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

📄 mqtab16.h

📁 WinCE 3.0 BSP, 包含Inter SA1110, Intel_815E, Advantech_PCM9574 等
💻 H
字号:
#ifndef __MQTAB16_H_
#define	__MQTAB16_H_

#define	NUM_CDEPTH		2
#define	CDEPTH_8BPP		0
#define	CDEPTH_16BPP	1

#define	DECLARE_BLT( name ) \
	SCODE	(GPE::*Table##name[NUM_CDEPTH])(struct GPEBltParms *);

#define	DECLARE_LINE( name ) \
	SCODE	(GPE::*Table##name[NUM_CDEPTH])(struct GPELineParms *);

#define	DEFINE_BLT( name, f0, f1 ) \
	Table##name[CDEPTH_8BPP ] = (SCODE (GPE::*)(struct GPEBltParms *))f0; \
	Table##name[CDEPTH_16BPP] = (SCODE (GPE::*)(struct GPEBltParms *))f1;

#define	DEFINE_LINE( name, f0, f1 ) \
	Table##name[CDEPTH_8BPP ] = (SCODE (GPE::*)(struct GPELineParms *))f0; \
	Table##name[CDEPTH_16BPP] = (SCODE (GPE::*)(struct GPELineParms *))f1;

#define	MQFUNC( name ) \
		(SCODE (GPE::*)(struct GPEBltParms *))name
#define	MQFUNC2( name ) \
		Table##name[ m_ulBPPSelect ]

#define	DECLARE_BLT_TABLES \
	DECLARE_BLT( CM2SBlt  ) \
	DECLARE_BLT( CM2SLKBlt )

#define	DECLARE_LINE_TABLES

#define	DEFINE_BLT_TABLES \
	DEFINE_BLT(CM2SBlt,   CM2SBlt,    CM2SBlt16) \
	DEFINE_BLT(CM2SLKBlt, CM2SLKBlt,  CM2SLKBlt16)

#define	DEFINE_LINE_TABLES

#ifdef AAFONT_ON
#define	_DEFINE_BLT_AAFONT \
	DECLARE_BLT_FUNC( AAFontBlt );
#else
#define	_DEFINE_BLT_AAFONT
#endif	//AAFONT_ON

#ifdef MPATBLT_ON
#define	_DEFINE_BLT_MPATBLT	\
	DECLARE_BLT_FUNC( MPATBlt );
#else
#define	_DEFINE_BLT_MPATBLT
#endif	//MPATBLT_ON

#define	_DEFINE_BLT_FUNCTIONS 		\
	DECLARE_BLT_FUNC( RFillBlt ); 	\
	DECLARE_BLT_FUNC( CPATBlt ); 	\
	DECLARE_BLT_FUNC( S2SBlt ); 	\
	DECLARE_BLT_FUNC( MM2SBlt ); 	\
	DECLARE_BLT_FUNC( CM2SBlt ); 	\
	DECLARE_BLT_FUNC( CM2SBlt16 ); 	\
	DECLARE_BLT_FUNC( CM2SLKBlt ); 	\
	DECLARE_BLT_FUNC( CM2SLKBlt16 );\
	DECLARE_BLT_FUNC( XPTextBlt );

#define	DEFINE_BLT_FUNCTIONS 		\
	_DEFINE_BLT_FUNCTIONS			\
	_DEFINE_BLT_MPATBLT				\
	_DEFINE_BLT_AAFONT

#define	DEFINE_LINE_FUNCTIONS 		\
	DECLARE_LINE_FUNC( SolidLine );


//+++++++++ Pattern Setup Routines handling ++++++++++

#define	NullPatternSetup (void (MQGC::*)(GPEBltParms *, ULONG *))NULL

#define	NUM_PATTERNTABLE	(gpe16Bpp - gpe8Bpp + 1)

#define	DECLARE_PATSETUP_TABLES \
	void (MQGC::*TablePatternSetup[NUM_PATTERNTABLE])(GPEBltParms *, ULONG *ulCmd);

#define	PATSETUP_IDX( cdepth ) TablePatternSetup[cdepth - gpe8Bpp]

#define	DEFINE_PATSETUP_TABLES \
	PATSETUP_IDX( gpe8Bpp  ) = (void (MQGC::*)(GPEBltParms *, ULONG *))PatternSetup8BPP; \
	PATSETUP_IDX( gpe16Bpp ) = (void (MQGC::*)(GPEBltParms *, ULONG *))PatternSetup16BPP; \

#ifdef	MPATBLT_ON
#define	_DEFINE_MPATSETUP_FUNCTION \
	void	PatternSetup1BPP( GPEBltParms *, ULONG *ulCmd );
#else
#define	_DEFINE_MPATSETUP_FUNCTION
#endif	//MPATBLT_ON

#define	_DEFINE_PATSETUP_FUNCTIONS \
	void	PatternSetupSolid( GPEBltParms *, ULONG *ulCmd ); \
	void	PatternSetup8BPP( GPEBltParms *, ULONG *ulCmd );  \
	void	PatternSetup16BPP( GPEBltParms *, ULONG *ulCmd );

#define	DEFINE_PATSETUP_FUNCTIONS \
	_DEFINE_PATSETUP_FUNCTIONS \
	_DEFINE_MPATSETUP_FUNCTION

//+++++++++ End Pattern Setup Routines handling ++++++++++

//$$$$$$$$$$$$ Macros for customized configuration - End $$$$$$$$$$$$$
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$


//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
//$$$$$$$$$ Macros for temporary driver development - Begin $$$$$$$$$$

//Change to just OK code after implemented
#define	RETURN_RFILLBLT		return S_OK
#define	RETURN_MPATBLT		return S_OK
#define	RETURN_CPATBLT		return S_OK
#define	RETURN_S2SBLT		return S_OK
#define	RETURN_MM2SBLT		return S_OK
#define	RETURN_CM2SBLT		return S_OK
#define	RETURN_CM2SBLT16	return S_OK
#define	RETURN_CM2SLKBLT	return S_OK
#define	RETURN_CM2SLKBLT16	return S_OK
#define	RETURN_AAFONT8		return EMULATED_BLT( pBltParms )
#define	RETURN_AAFONT		return S_OK
#define	RETURN_SOLIDLINE	return S_OK
#define	RETURN_XPTEXT		return S_OK

//$$$$$$$$$$ Macros for temporary driver development - End $$$$$$$$$$$
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

#endif	//__MQTAB16_H_

⌨️ 快捷键说明

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