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 #includeextern 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_)