summaryrefslogtreecommitdiff
path: root/Backend/GL/Type.hs
diff options
context:
space:
mode:
authorCsaba Hruska <csaba.hruska@gmail.com>2015-06-09 11:34:57 +0100
committerCsaba Hruska <csaba.hruska@gmail.com>2015-06-09 11:34:57 +0100
commit4efa8405bd9eeec3c16bd8dd92cc5e7b66f8a3ae (patch)
treeb7703f8578eb35f00554e884e13216700147a0bc /Backend/GL/Type.hs
parent23747de92cb2883e3a0ce97805e354ea502378fc (diff)
support for immediate stream data
Diffstat (limited to 'Backend/GL/Type.hs')
-rw-r--r--Backend/GL/Type.hs10
1 files changed, 10 insertions, 0 deletions
diff --git a/Backend/GL/Type.hs b/Backend/GL/Type.hs
index 80cba6d..db2ad1e 100644
--- a/Backend/GL/Type.hs
+++ b/Backend/GL/Type.hs
@@ -149,6 +149,14 @@ data InputConnection
149 , icSlotMapInputToPipeline :: Vector (Maybe SlotName) -- GLPipelineInput to GLPipeline slot name mapping 149 , icSlotMapInputToPipeline :: Vector (Maybe SlotName) -- GLPipelineInput to GLPipeline slot name mapping
150 } 150 }
151 151
152data GLStream
153 = GLStream
154 { glStreamCommands :: IORef [GLObjectCommand]
155 , glStreamPrimitive :: Primitive
156 , glStreamAttributes :: Trie (Stream Buffer)
157 , glStreamProgram :: ProgramName
158 }
159
152data GLPipeline 160data GLPipeline
153 = GLPipeline 161 = GLPipeline
154 { glPrograms :: Vector GLProgram 162 { glPrograms :: Vector GLProgram
@@ -161,6 +169,7 @@ data GLPipeline
161 , glSlotNames :: Vector ByteString 169 , glSlotNames :: Vector ByteString
162 , glVAO :: GLuint 170 , glVAO :: GLuint
163 , glTexUnitMapping :: Trie (IORef GLint) -- maps texture uniforms to texture units 171 , glTexUnitMapping :: Trie (IORef GLint) -- maps texture uniforms to texture units
172 , glStreams :: Vector GLStream
164 } 173 }
165 174
166data GLSampler 175data GLSampler
@@ -183,6 +192,7 @@ data GLCommand
183 | GLSetTexture !GLenum !GLuint !GLuint 192 | GLSetTexture !GLenum !GLuint !GLuint
184 | GLSetSampler !GLuint !GLuint 193 | GLSetSampler !GLuint !GLuint
185 | GLRenderSlot !SlotName !ProgramName 194 | GLRenderSlot !SlotName !ProgramName
195 | GLRenderStream !StreamName !ProgramName
186 | GLClearRenderTarget [(ImageSemantic,Value)] 196 | GLClearRenderTarget [(ImageSemantic,Value)]
187 | GLGenerateMipMap !GLenum !GLenum 197 | GLGenerateMipMap !GLenum !GLenum
188 | GLSaveImage FrameBufferComponent ImageRef -- from framebuffer component to texture (image) 198 | GLSaveImage FrameBufferComponent ImageRef -- from framebuffer component to texture (image)