{-# OPTIONS_HADDOCK hide #-}
module Graphics.Rendering.OpenGL.GL.BlendingFactor (
BlendingFactor(..), marshalBlendingFactor, unmarshalBlendingFactor
) where
import Graphics.GL
data BlendingFactor =
Zero
| One
| SrcColor
| OneMinusSrcColor
| DstColor
| OneMinusDstColor
| SrcAlpha
| OneMinusSrcAlpha
| DstAlpha
| OneMinusDstAlpha
| ConstantColor
| OneMinusConstantColor
| ConstantAlpha
| OneMinusConstantAlpha
| SrcAlphaSaturate
deriving ( BlendingFactor -> BlendingFactor -> Bool
(BlendingFactor -> BlendingFactor -> Bool)
-> (BlendingFactor -> BlendingFactor -> Bool) -> Eq BlendingFactor
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: BlendingFactor -> BlendingFactor -> Bool
$c/= :: BlendingFactor -> BlendingFactor -> Bool
== :: BlendingFactor -> BlendingFactor -> Bool
$c== :: BlendingFactor -> BlendingFactor -> Bool
Eq, Eq BlendingFactor
Eq BlendingFactor =>
(BlendingFactor -> BlendingFactor -> Ordering)
-> (BlendingFactor -> BlendingFactor -> Bool)
-> (BlendingFactor -> BlendingFactor -> Bool)
-> (BlendingFactor -> BlendingFactor -> Bool)
-> (BlendingFactor -> BlendingFactor -> Bool)
-> (BlendingFactor -> BlendingFactor -> BlendingFactor)
-> (BlendingFactor -> BlendingFactor -> BlendingFactor)
-> Ord BlendingFactor
BlendingFactor -> BlendingFactor -> Bool
BlendingFactor -> BlendingFactor -> Ordering
BlendingFactor -> BlendingFactor -> BlendingFactor
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
min :: BlendingFactor -> BlendingFactor -> BlendingFactor
$cmin :: BlendingFactor -> BlendingFactor -> BlendingFactor
max :: BlendingFactor -> BlendingFactor -> BlendingFactor
$cmax :: BlendingFactor -> BlendingFactor -> BlendingFactor
>= :: BlendingFactor -> BlendingFactor -> Bool
$c>= :: BlendingFactor -> BlendingFactor -> Bool
> :: BlendingFactor -> BlendingFactor -> Bool
$c> :: BlendingFactor -> BlendingFactor -> Bool
<= :: BlendingFactor -> BlendingFactor -> Bool
$c<= :: BlendingFactor -> BlendingFactor -> Bool
< :: BlendingFactor -> BlendingFactor -> Bool
$c< :: BlendingFactor -> BlendingFactor -> Bool
compare :: BlendingFactor -> BlendingFactor -> Ordering
$ccompare :: BlendingFactor -> BlendingFactor -> Ordering
$cp1Ord :: Eq BlendingFactor
Ord, Int -> BlendingFactor -> ShowS
[BlendingFactor] -> ShowS
BlendingFactor -> String
(Int -> BlendingFactor -> ShowS)
-> (BlendingFactor -> String)
-> ([BlendingFactor] -> ShowS)
-> Show BlendingFactor
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [BlendingFactor] -> ShowS
$cshowList :: [BlendingFactor] -> ShowS
show :: BlendingFactor -> String
$cshow :: BlendingFactor -> String
showsPrec :: Int -> BlendingFactor -> ShowS
$cshowsPrec :: Int -> BlendingFactor -> ShowS
Show )
marshalBlendingFactor :: BlendingFactor -> GLenum
marshalBlendingFactor :: BlendingFactor -> GLenum
marshalBlendingFactor x :: BlendingFactor
x = case BlendingFactor
x of
Zero -> GLenum
GL_ZERO
One -> GLenum
GL_ONE
SrcColor -> GLenum
GL_SRC_COLOR
OneMinusSrcColor -> GLenum
GL_ONE_MINUS_SRC_COLOR
DstColor -> GLenum
GL_DST_COLOR
OneMinusDstColor -> GLenum
GL_ONE_MINUS_DST_COLOR
SrcAlpha -> GLenum
GL_SRC_ALPHA
OneMinusSrcAlpha -> GLenum
GL_ONE_MINUS_SRC_ALPHA
DstAlpha -> GLenum
GL_DST_ALPHA
OneMinusDstAlpha -> GLenum
GL_ONE_MINUS_DST_ALPHA
ConstantColor -> GLenum
GL_CONSTANT_COLOR
OneMinusConstantColor -> GLenum
GL_ONE_MINUS_CONSTANT_COLOR
ConstantAlpha -> GLenum
GL_CONSTANT_ALPHA
OneMinusConstantAlpha -> GLenum
GL_ONE_MINUS_CONSTANT_ALPHA
SrcAlphaSaturate -> GLenum
GL_SRC_ALPHA_SATURATE
unmarshalBlendingFactor :: GLenum -> BlendingFactor
unmarshalBlendingFactor :: GLenum -> BlendingFactor
unmarshalBlendingFactor x :: GLenum
x
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_ZERO = BlendingFactor
Zero
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_ONE = BlendingFactor
One
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_SRC_COLOR = BlendingFactor
SrcColor
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_ONE_MINUS_SRC_COLOR = BlendingFactor
OneMinusSrcColor
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_DST_COLOR = BlendingFactor
DstColor
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_ONE_MINUS_DST_COLOR = BlendingFactor
OneMinusDstColor
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_SRC_ALPHA = BlendingFactor
SrcAlpha
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_ONE_MINUS_SRC_ALPHA = BlendingFactor
OneMinusSrcAlpha
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_DST_ALPHA = BlendingFactor
DstAlpha
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_ONE_MINUS_DST_ALPHA = BlendingFactor
OneMinusDstAlpha
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_CONSTANT_COLOR = BlendingFactor
ConstantColor
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_ONE_MINUS_CONSTANT_COLOR = BlendingFactor
OneMinusConstantColor
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_CONSTANT_ALPHA = BlendingFactor
ConstantAlpha
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_ONE_MINUS_CONSTANT_ALPHA = BlendingFactor
OneMinusConstantAlpha
| GLenum
x GLenum -> GLenum -> Bool
forall a. Eq a => a -> a -> Bool
== GLenum
GL_SRC_ALPHA_SATURATE = BlendingFactor
SrcAlphaSaturate
| Bool
otherwise = String -> BlendingFactor
forall a. HasCallStack => String -> a
error ("unmarshalBlendingFactor: illegal value " String -> ShowS
forall a. [a] -> [a] -> [a]
++ GLenum -> String
forall a. Show a => a -> String
show GLenum
x)