{-# OPTIONS_HADDOCK hide #-}
--------------------------------------------------------------------------------
-- |
-- Module      :  Graphics.Rendering.OpenGL.GL.PixelRectangles.Reset
-- Copyright   :  (c) Sven Panne 2002-2019
-- License     :  BSD3
-- 
-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
-- Stability   :  stable
-- Portability :  portable
--
-- This is a purely internal module for (un-)marshaling Reset.
--
--------------------------------------------------------------------------------

module Graphics.Rendering.OpenGL.GL.PixelRectangles.Reset (
   Reset(..), marshalReset
) where

import Graphics.Rendering.OpenGL.GL.GLboolean
import Graphics.GL

--------------------------------------------------------------------------------

data Reset =
     NoReset
   | Reset
   deriving ( Reset -> Reset -> Bool
(Reset -> Reset -> Bool) -> (Reset -> Reset -> Bool) -> Eq Reset
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: Reset -> Reset -> Bool
== :: Reset -> Reset -> Bool
$c/= :: Reset -> Reset -> Bool
/= :: Reset -> Reset -> Bool
Eq, Eq Reset
Eq Reset =>
(Reset -> Reset -> Ordering)
-> (Reset -> Reset -> Bool)
-> (Reset -> Reset -> Bool)
-> (Reset -> Reset -> Bool)
-> (Reset -> Reset -> Bool)
-> (Reset -> Reset -> Reset)
-> (Reset -> Reset -> Reset)
-> Ord Reset
Reset -> Reset -> Bool
Reset -> Reset -> Ordering
Reset -> Reset -> Reset
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
$ccompare :: Reset -> Reset -> Ordering
compare :: Reset -> Reset -> Ordering
$c< :: Reset -> Reset -> Bool
< :: Reset -> Reset -> Bool
$c<= :: Reset -> Reset -> Bool
<= :: Reset -> Reset -> Bool
$c> :: Reset -> Reset -> Bool
> :: Reset -> Reset -> Bool
$c>= :: Reset -> Reset -> Bool
>= :: Reset -> Reset -> Bool
$cmax :: Reset -> Reset -> Reset
max :: Reset -> Reset -> Reset
$cmin :: Reset -> Reset -> Reset
min :: Reset -> Reset -> Reset
Ord, Int -> Reset -> ShowS
[Reset] -> ShowS
Reset -> String
(Int -> Reset -> ShowS)
-> (Reset -> String) -> ([Reset] -> ShowS) -> Show Reset
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> Reset -> ShowS
showsPrec :: Int -> Reset -> ShowS
$cshow :: Reset -> String
show :: Reset -> String
$cshowList :: [Reset] -> ShowS
showList :: [Reset] -> ShowS
Show )

marshalReset :: Reset -> GLboolean
marshalReset :: Reset -> GLboolean
marshalReset Reset
x = Bool -> GLboolean
forall a. Num a => Bool -> a
marshalGLboolean (Reset
x Reset -> Reset -> Bool
forall a. Eq a => a -> a -> Bool
== Reset
Reset)