www.pudn.com > DirectX的游戏代码.rar > BlackBox.h


// BlackBox.h: interface for the CBlackBox class. 
// 
////////////////////////////////////////////////////////////////////// 
 
#if !defined(AFX_BLACKBOX_H__D442A885_B513_40E7_A107_0E589340849E__INCLUDED_) 
#define AFX_BLACKBOX_H__D442A885_B513_40E7_A107_0E589340849E__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
#include  
 
extern LPDIRECTDRAWSURFACE7  lpddsback; 
 
// these read the keyboard asynchronously 
#define KEY_DOWN(vk_code) ((GetAsyncKeyState(vk_code) & 0x8000) ? 1 : 0) 
#define KEY_UP(vk_code)   ((GetAsyncKeyState(vk_code) & 0x8000) ? 0 : 1) 
// initializes a direct draw struct 
#define DD_INIT_STRUCT(ddstruct) { memset(&ddstruct,0,sizeof(ddstruct)); ddstruct.dwSize=sizeof(ddstruct); } 
 
class CBlackBox   
{ 
public: 
	CBlackBox(); 
	virtual ~CBlackBox(); 
private: 
	double	m_start_clock; 
public: 
	double	DD_Wait_Clock(double count); 
	double	DD_Start_Clock(); 
	void	DD_Flip(); 
	LPDIRECTDRAWCLIPPER DD_Attach_Clipper(int num_rects,LPRECT clip_list,LPDIRECTDRAWSURFACE7 lpdds=lpddsback); 
	void	DD_ShutDown(); 
	void	DD_Fill_Surface(int color,LPDIRECTDRAWSURFACE7 lpdds=lpddsback); 
	bool	DD_Init(); 
	int		Draw_Rectangle(int x1, int y1, int x2, int y2, int color, 
                   LPDIRECTDRAWSURFACE7 lpdds=lpddsback); 
	int		Draw_Text_GDI(char *text, int x,int y,int color, LPDIRECTDRAWSURFACE7 lpdds=lpddsback); 
 
	void	LogFile(char *p); 
}; 
 
#endif // !defined(AFX_BLACKBOX_H__D442A885_B513_40E7_A107_0E589340849E__INCLUDED_)