Main Page
Namespaces
Classes
Files
File List
File Members
include
Graphics
GL4
GteGL4BlendState.h
Go to the documentation of this file.
1
// David Eberly, Geometric Tools, Redmond WA 98052
2
// Copyright (c) 1998-2017
3
// Distributed under the Boost Software License, Version 1.0.
4
// http://www.boost.org/LICENSE_1_0.txt
5
// http://www.geometrictools.com/License/Boost/LICENSE_1_0.txt
6
// File Version: 3.0.0 (2016/06/19)
7
8
#pragma once
9
10
#include <
Graphics/GteBlendState.h
>
11
#include <
Graphics/GL4/GteGL4DrawingState.h
>
12
13
namespace
gte
14
{
15
16
class
GTE_IMPEXP
GL4BlendState
:
public
GL4DrawingState
17
{
18
public
:
19
// Construction.
20
GL4BlendState
(
BlendState
const
* blendState);
21
static
std::shared_ptr<GEObject> Create(
void
* unused,
GraphicsObject
const
*
object
);
22
23
// Member access.
24
inline
BlendState
* GetBlendState();
25
26
// Enable the blend state.
27
void
Enable();
28
29
private
:
30
struct
Target
31
{
32
GLboolean
enable
;
33
GLenum
srcColor
;
34
GLenum
dstColor
;
35
GLenum
opColor
;
36
GLenum
srcAlpha
;
37
GLenum
dstAlpha
;
38
GLenum
opAlpha
;
39
GLboolean
rMask
;
40
GLboolean
gMask
;
41
GLboolean
bMask
;
42
GLboolean
aMask
;
43
};
44
45
bool
mEnableAlphaToCoverage
;
46
bool
mEnableIndependentBlend
;
47
Target
mTarget[
BlendState::NUM_TARGETS
];
48
Vector4<float>
mBlendColor
;
49
unsigned
int
mSampleMask
;
50
51
// Conversions from GTEngine values to GL4 values.
52
static
GLenum
const
msMode[];
53
static
GLenum
const
msOperation[];
54
};
55
56
inline
BlendState
*
GL4BlendState::GetBlendState
()
57
{
58
return
static_cast<
BlendState
*
>
(mGTObject);
59
}
60
61
}
gte::GL4BlendState::GetBlendState
BlendState * GetBlendState()
Definition:
GteGL4BlendState.h:56
gte::GL4BlendState::mEnableAlphaToCoverage
bool mEnableAlphaToCoverage
Definition:
GteGL4BlendState.h:45
gte::GL4DrawingState
Definition:
GteGL4DrawingState.h:16
GLboolean
unsigned char GLboolean
Definition:
glcorearb.h:90
gte::GL4BlendState::Target::bMask
GLboolean bMask
Definition:
GteGL4BlendState.h:41
gte::GL4BlendState::Target::opColor
GLenum opColor
Definition:
GteGL4BlendState.h:35
gte::GL4BlendState::Target
Definition:
GteGL4BlendState.h:30
gte::GL4BlendState
Definition:
GteGL4BlendState.h:16
gte::GL4BlendState::Target::opAlpha
GLenum opAlpha
Definition:
GteGL4BlendState.h:38
gte::GL4BlendState::mBlendColor
Vector4< float > mBlendColor
Definition:
GteGL4BlendState.h:48
gte::GL4BlendState::Target::dstAlpha
GLenum dstAlpha
Definition:
GteGL4BlendState.h:37
gte::BlendState::NUM_TARGETS
Definition:
GteBlendState.h:60
gte::GraphicsObject
Definition:
GteGraphicsObject.h:115
GLenum
unsigned int GLenum
Definition:
glcorearb.h:83
gte
Definition:
GLX/GteWICFileIO.h:16
gte::Vector< 4, Real >
gte::GL4BlendState::Target::aMask
GLboolean aMask
Definition:
GteGL4BlendState.h:42
gte::GL4BlendState::Target::rMask
GLboolean rMask
Definition:
GteGL4BlendState.h:39
gte::GL4BlendState::Target::dstColor
GLenum dstColor
Definition:
GteGL4BlendState.h:34
GteGL4DrawingState.h
gte::GL4BlendState::Target::enable
GLboolean enable
Definition:
GteGL4BlendState.h:32
gte::GL4BlendState::mSampleMask
unsigned int mSampleMask
Definition:
GteGL4BlendState.h:49
gte::GL4BlendState::Target::srcAlpha
GLenum srcAlpha
Definition:
GteGL4BlendState.h:36
gte::GL4BlendState::mEnableIndependentBlend
bool mEnableIndependentBlend
Definition:
GteGL4BlendState.h:46
gte::GL4BlendState::Target::gMask
GLboolean gMask
Definition:
GteGL4BlendState.h:40
gte::BlendState
Definition:
GteBlendState.h:16
gte::GL4BlendState::Target::srcColor
GLenum srcColor
Definition:
GteGL4BlendState.h:33
GteBlendState.h
GTE_IMPEXP
#define GTE_IMPEXP
Definition:
GTEngineDEF.h:63
geometric_tools_engine
Author(s): Yijiang Huang
autogenerated on Thu Jul 18 2019 03:59:59