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

📄 directdrawfullscreentb16bpp.h

📁 VIGASOCO (VIdeo GAmes SOurce COde) Windows port (v0.01)
💻 H
字号:
// DirectDrawFullScreenTB16bpp.h
//
//	Class that implements a DirectDraw FullScreen 16bpp mode using triple buffer
//
/////////////////////////////////////////////////////////////////////////////

#ifndef _DIRECT_DRAW_FULLSCREEN_TB_16BPP_H_
#define _DIRECT_DRAW_FULLSCREEN_TB_16BPP_H_


#include "DirectDrawFullScreen.h"
#include "util/INotificationSuscriber.h"

class DirectDrawFullScreenTB16bpp : public DirectDrawFullScreen, public INotificationSuscriber<IPalette>
{
// fields
protected:
	LPDIRECTDRAWSURFACE _backBuf;
	IPalette *_originalPalette;
	UINT16 *_palette;

// inherited methods
public:
	// initialization and cleanup
	DirectDrawFullScreenTB16bpp(Win32Settings *settings);
	virtual ~DirectDrawFullScreenTB16bpp();
	virtual bool init(const VideoInfo *vi, IPalette *pal);
	virtual void end();

	// drawing functions
	virtual void render(bool throttle);

	virtual void setPixel(int x, int y, int color);

	virtual void drawGfx(GfxElement *gfx, int code, int color, int x, int y, int attr);
	virtual void drawGfxClip(GfxElement *gfx,	int code, int color, int x, int y, int attr, Rect *clip);
	virtual void drawGfxTrans(GfxElement *gfx, int code, int color, int x, int y, int attr, int transData);
	virtual void drawGfxClipTrans(GfxElement *gfx, int code, int color, int x, int y, int attr, Rect *clip, int transData);

protected:
	// palette changed notification
	virtual void update(IPalette *palette, int data);
	void updateFullPalette(IPalette *palette);
};


#endif // _DIRECT_DRAW_FULLSCREEN_TB_16BPP_H

⌨️ 快捷键说明

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