ibis/src/Types.hs

35 lines
644 B
Haskell

module Types where
import qualified SDL
import qualified Graphics.Rendering.OpenGL as GL
import qualified Graphics.GLUtil as GU
import qualified Data.Text as T
import Data.Time.Clock
data Options = Options
{ optFullscreen :: Bool
, optFlipScreens :: Bool
, optVerbose :: Bool
, optFile :: T.Text
}
deriving (Show)
data State = State
{ stCurrentPage :: Word
, stFilename :: T.Text
, stPresentationWindow :: Word
, stStartTime :: UTCTime
, stWindows :: [(Word, SDL.Window)]
, stProgram :: GU.ShaderProgram
, stVEBO :: GLvebo
}
data GLvebo = GLvebo
{ giVBO :: GL.BufferObject
, giEBO :: GL.BufferObject
}