forked from dolphin-emu/dolphin
		
	
		
			
				
	
	
		
			41 lines
		
	
	
		
			971 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			971 B
		
	
	
	
		
			C++
		
	
	
	
	
	
// Copyright 2013 Dolphin Emulator Project
 | 
						|
// Licensed under GPLv2
 | 
						|
// Refer to the license.txt file included.
 | 
						|
 | 
						|
#ifndef _EFB_INTERFACE_H_
 | 
						|
#define _EFB_INTERFACE_H_
 | 
						|
 | 
						|
#include "VideoCommon.h"
 | 
						|
 | 
						|
namespace EfbInterface
 | 
						|
{
 | 
						|
	const int DEPTH_BUFFER_START = EFB_WIDTH * EFB_HEIGHT * 3;
 | 
						|
 | 
						|
	enum { ALP_C, BLU_C, GRN_C, RED_C };
 | 
						|
 | 
						|
	// color order is ABGR in order to emulate RGBA on little-endian hardware
 | 
						|
 | 
						|
	// does full blending of an incoming pixel
 | 
						|
	void BlendTev(u16 x, u16 y, u8 *color);
 | 
						|
 | 
						|
	// compare z at location x,y
 | 
						|
	// writes it if it passes
 | 
						|
	// returns result of compare.
 | 
						|
	bool ZCompare(u16 x, u16 y, u32 z);
 | 
						|
 | 
						|
	// sets the color and alpha
 | 
						|
	void SetColor(u16 x, u16 y, u8 *color);
 | 
						|
	void SetDepth(u16 x, u16 y, u32 depth);
 | 
						|
 | 
						|
	void GetColor(u16 x, u16 y, u8 *color);
 | 
						|
	u32 GetDepth(u16 x, u16 y);
 | 
						|
 | 
						|
	u8* GetPixelPointer(u16 x, u16 y, bool depth);
 | 
						|
 | 
						|
	void UpdateColorTexture();
 | 
						|
	extern u8 efbColorTexture[EFB_WIDTH*EFB_HEIGHT*4]; // RGBA format
 | 
						|
	void DoState(PointerWrap &p);
 | 
						|
}
 | 
						|
 | 
						|
#endif
 |