Path: blob/master/libmupen64plus/mupen64plus-video-rice/src/Blender.h
2 views
/*1Copyright (C) 2003 Rice196423This program is free software; you can redistribute it and/or4modify it under the terms of the GNU General Public License5as published by the Free Software Foundation; either version 26of the License, or (at your option) any later version.78This program is distributed in the hope that it will be useful,9but WITHOUT ANY WARRANTY; without even the implied warranty of10MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the11GNU General Public License for more details.1213You should have received a copy of the GNU General Public License14along with this program; if not, write to the Free Software15Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.16*/1718#ifndef _BLENDER_H_19#define _BLENDER_H_2021#include "typedefs.h"2223class CRender;2425class CBlender26{27public:28virtual ~CBlender() {}2930virtual void InitBlenderMode(void);31virtual void NormalAlphaBlender(void)=0;32virtual void DisableAlphaBlender(void)=0;3334virtual void BlendFunc(uint32 srcFunc, uint32 desFunc)=0;3536virtual void Enable()=0;37virtual void Disable()=0;38protected:39CBlender(CRender *pRender) : m_pRender(pRender) {}40CRender *m_pRender;41};4243typedef enum _BLEND44{45BLEND_ZERO = 1,46BLEND_ONE = 2,47BLEND_SRCCOLOR = 3,48BLEND_INVSRCCOLOR = 4,49BLEND_SRCALPHA = 5,50BLEND_INVSRCALPHA = 6,51BLEND_DESTALPHA = 7,52BLEND_INVDESTALPHA = 8,53BLEND_DESTCOLOR = 9,54BLEND_INVDESTCOLOR = 10,55BLEND_SRCALPHASAT = 11,56BLEND_BOTHSRCALPHA = 12,57BLEND_BOTHINVSRCALPHA = 13,58BLEND_BLENDFACTOR = 14,59BLEND_INVBLENDFACTOR = 15,60BLEND_FORCE_DWORD = 0x7fffffff61} BLEND;6263#endif646566676869