Path: blob/master/libmupen64plus/mupen64plus-video-rice/src/OGLCombiner.h
2 views
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *1* Mupen64plus - OGLCombiner.h *2* Mupen64Plus homepage: http://code.google.com/p/mupen64plus/ *3* Copyright (C) 2002 Rice1964 *4* *5* This program is free software; you can redistribute it and/or modify *6* it under the terms of the GNU General Public License as published by *7* the Free Software Foundation; either version 2 of the License, or *8* (at your option) any later version. *9* *10* This program is distributed in the hope that it will be useful, *11* but WITHOUT ANY WARRANTY; without even the implied warranty of *12* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *13* GNU General Public License for more details. *14* *15* You should have received a copy of the GNU General Public License *16* along with this program; if not, write to the *17* Free Software Foundation, Inc., *18* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *19* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */2021#ifndef _OGL_COMBINER_H_22#define _OGL_COMBINER_H_2324#include "Blender.h"25#include "Combiner.h"2627class OGLRender;2829class COGLColorCombiner : public CColorCombiner30{31public:32bool Initialize(void);33void InitCombinerBlenderForSimpleTextureDraw(uint32 tile=0);34protected:35friend class OGLDeviceBuilder;3637void DisableCombiner(void);38void InitCombinerCycleCopy(void);39void InitCombinerCycleFill(void);40void InitCombinerCycle12(void);4142COGLColorCombiner(CRender *pRender);43~COGLColorCombiner();44OGLRender *m_pOGLRender;4546bool m_bSupportAdd;47bool m_bSupportSubtract;4849#ifdef DEBUGGER50void DisplaySimpleMuxString(void);51#endif5253};5455class COGLBlender : public CBlender56{57public:58void NormalAlphaBlender(void);59void DisableAlphaBlender(void);60void BlendFunc(uint32 srcFunc, uint32 desFunc);61void Enable();62void Disable();6364protected:65friend class OGLDeviceBuilder;66COGLBlender(CRender *pRender) : CBlender(pRender), m_pOGLRender((OGLRender*)pRender) {};67~COGLBlender() {};6869OGLRender *m_pOGLRender;70};717273#endif747576777879