| Copyright | Will Thompson and Iñaki García Etxebarria | 
|---|---|
| License | LGPL-2.1 | 
| Maintainer | Iñaki García Etxebarria | 
| Safe Haskell | Safe-Inferred | 
| Language | Haskell2010 | 
GI.Clutter.Objects.Shader
Description
The Shader structure contains only private data
 and should be accessed using the provided API
Since: 0.6
Synopsis
- newtype Shader = Shader (ManagedPtr Shader)
 - class (GObject o, IsDescendantOf Shader o) => IsShader o
 - toShader :: (MonadIO m, IsShader o) => o -> m Shader
 - shaderCompile :: (HasCallStack, MonadIO m, IsShader a) => a -> m ()
 - shaderGetCoglFragmentShader :: (HasCallStack, MonadIO m, IsShader a) => a -> m (Ptr ())
 - shaderGetCoglProgram :: (HasCallStack, MonadIO m, IsShader a) => a -> m (Ptr ())
 - shaderGetCoglVertexShader :: (HasCallStack, MonadIO m, IsShader a) => a -> m (Ptr ())
 - shaderGetFragmentSource :: (HasCallStack, MonadIO m, IsShader a) => a -> m Text
 - shaderGetIsEnabled :: (HasCallStack, MonadIO m, IsShader a) => a -> m Bool
 - shaderGetVertexSource :: (HasCallStack, MonadIO m, IsShader a) => a -> m Text
 - shaderIsCompiled :: (HasCallStack, MonadIO m, IsShader a) => a -> m Bool
 - shaderNew :: (HasCallStack, MonadIO m) => m Shader
 - shaderRelease :: (HasCallStack, MonadIO m, IsShader a) => a -> m ()
 - shaderSetFragmentSource :: (HasCallStack, MonadIO m, IsShader a) => a -> Text -> Int64 -> m ()
 - shaderSetIsEnabled :: (HasCallStack, MonadIO m, IsShader a) => a -> Bool -> m ()
 - shaderSetUniform :: (HasCallStack, MonadIO m, IsShader a) => a -> Text -> GValue -> m ()
 - shaderSetVertexSource :: (HasCallStack, MonadIO m, IsShader a) => a -> Text -> Int64 -> m ()
 - getShaderCompiled :: (MonadIO m, IsShader o) => o -> m Bool
 - constructShaderEnabled :: (IsShader o, MonadIO m) => Bool -> m (GValueConstruct o)
 - getShaderEnabled :: (MonadIO m, IsShader o) => o -> m Bool
 - setShaderEnabled :: (MonadIO m, IsShader o) => o -> Bool -> m ()
 - clearShaderFragmentSource :: (MonadIO m, IsShader o) => o -> m ()
 - constructShaderFragmentSource :: (IsShader o, MonadIO m) => Text -> m (GValueConstruct o)
 - getShaderFragmentSource :: (MonadIO m, IsShader o) => o -> m Text
 - setShaderFragmentSource :: (MonadIO m, IsShader o) => o -> Text -> m ()
 - clearShaderVertexSource :: (MonadIO m, IsShader o) => o -> m ()
 - constructShaderVertexSource :: (IsShader o, MonadIO m) => Text -> m (GValueConstruct o)
 - getShaderVertexSource :: (MonadIO m, IsShader o) => o -> m Text
 - setShaderVertexSource :: (MonadIO m, IsShader o) => o -> Text -> m ()
 
Exported types
Memory-managed wrapper type.
Instances
| Eq Shader Source # | |
| GObject Shader Source # | |
Defined in GI.Clutter.Objects.Shader  | |
| ManagedPtrNewtype Shader Source # | |
Defined in GI.Clutter.Objects.Shader Methods toManagedPtr :: Shader -> ManagedPtr Shader  | |
| TypedObject Shader Source # | |
Defined in GI.Clutter.Objects.Shader  | |
| HasParentTypes Shader Source # | |
Defined in GI.Clutter.Objects.Shader  | |
| IsGValue (Maybe Shader) Source # | Convert   | 
Defined in GI.Clutter.Objects.Shader Methods gvalueGType_ :: IO GType gvalueSet_ :: Ptr GValue -> Maybe Shader -> IO () gvalueGet_ :: Ptr GValue -> IO (Maybe Shader)  | |
| type ParentTypes Shader Source # | |
Defined in GI.Clutter.Objects.Shader type ParentTypes Shader = '[Object]  | |
class (GObject o, IsDescendantOf Shader o) => IsShader o Source #
Instances
| (GObject o, IsDescendantOf Shader o) => IsShader o Source # | |
Defined in GI.Clutter.Objects.Shader  | |
Methods
Click to display all available methods, including inherited ones
Methods
bindProperty, bindPropertyFull, compile, forceFloating, freezeNotify, getv, isCompiled, isFloating, notify, notifyByPspec, ref, refSink, release, runDispose, stealData, stealQdata, thawNotify, unref, watchClosure.
Getters
getCoglFragmentShader, getCoglProgram, getCoglVertexShader, getData, getFragmentSource, getIsEnabled, getProperty, getQdata, getVertexSource.
Setters
setData, setDataFull, setFragmentSource, setIsEnabled, setProperty, setUniform, setVertexSource.
compile
Arguments
| :: (HasCallStack, MonadIO m, IsShader a) | |
| => a | 
  | 
| -> m () | (Can throw   | 
Deprecated: (Since version 1.8)Use ShaderEffect instead.
Compiles and links GLSL sources set for vertex and fragment shaders for
 a Shader. If the compilation fails and a GError return location is
 provided the error will contain the errors from the compiler, if any.
Since: 0.8
getCoglFragmentShader
shaderGetCoglFragmentShader Source #
Arguments
| :: (HasCallStack, MonadIO m, IsShader a) | |
| => a | 
  | 
| -> m (Ptr ()) | Returns: A   | 
Deprecated: (Since version 1.8)Use ShaderEffect instead.
Retrieves the underlying CoglHandle for the fragment shader.
Since: 1.0
getCoglProgram
Arguments
| :: (HasCallStack, MonadIO m, IsShader a) | |
| => a | 
  | 
| -> m (Ptr ()) | Returns: A   | 
Deprecated: (Since version 1.8)Use ShaderEffect instead.
Retrieves the underlying CoglHandle for the shader program.
Since: 1.0
getCoglVertexShader
shaderGetCoglVertexShader Source #
Arguments
| :: (HasCallStack, MonadIO m, IsShader a) | |
| => a | 
  | 
| -> m (Ptr ()) | Returns: A   | 
Deprecated: (Since version 1.8)Use ShaderEffect instead.
Retrieves the underlying CoglHandle for the vertex shader.
Since: 1.0
getFragmentSource
shaderGetFragmentSource Source #
Arguments
| :: (HasCallStack, MonadIO m, IsShader a) | |
| => a | 
  | 
| -> m Text | Returns: the source of the fragment shader for this
 ClutterShader object or   | 
Deprecated: (Since version 1.8)Use ShaderEffect instead.
Query the current GLSL fragment source set on shader.
Since: 0.6
getIsEnabled
getVertexSource
shaderGetVertexSource Source #
Arguments
| :: (HasCallStack, MonadIO m, IsShader a) | |
| => a | 
  | 
| -> m Text | Returns: the source of the vertex shader for this
 ClutterShader object or   | 
Deprecated: (Since version 1.8)Use ShaderEffect instead.
Query the current GLSL vertex source set on shader.
Since: 0.6
isCompiled
Arguments
| :: (HasCallStack, MonadIO m, IsShader a) | |
| => a | 
  | 
| -> m Bool | Returns:   | 
Deprecated: (Since version 1.8)Use ShaderEffect instead.
Checks whether shader is is currently compiled, linked and bound
 to the GL context.
Since: 0.8
new
Arguments
| :: (HasCallStack, MonadIO m) | |
| => m Shader | Returns: a new   | 
release
Arguments
| :: (HasCallStack, MonadIO m, IsShader a) | |
| => a | 
  | 
| -> m () | 
Deprecated: (Since version 1.8)Use ShaderEffect instead.
Frees up any GL context resources held by the shader.
Since: 0.6
setFragmentSource
shaderSetFragmentSource Source #
Arguments
| :: (HasCallStack, MonadIO m, IsShader a) | |
| => a | 
  | 
| -> Text | 
  | 
| -> Int64 | 
  | 
| -> m () | 
Deprecated: (Since version 1.8)Use ShaderEffect instead.
Sets the GLSL source code to be used by a Shader for the fragment
 program.
Since: 0.6
setIsEnabled
Arguments
| :: (HasCallStack, MonadIO m, IsShader a) | |
| => a | 
  | 
| -> Bool | 
  | 
| -> m () | 
Deprecated: (Since version 1.8)Use ShaderEffect instead.
Enables a shader. This function will attempt to compile and link the shader, if it isn't already.
When enabled is False the default state of the GL pipeline will be
 used instead.
Since: 0.6
setUniform
Arguments
| :: (HasCallStack, MonadIO m, IsShader a) | |
| => a | 
  | 
| -> Text | 
  | 
| -> GValue | 
  | 
| -> m () | 
Deprecated: (Since version 1.8)Use ShaderEffect instead.
Sets a user configurable variable in the GLSL shader programs attached to
 a Shader.
Since: 1.0
setVertexSource
shaderSetVertexSource Source #
Arguments
| :: (HasCallStack, MonadIO m, IsShader a) | |
| => a | 
  | 
| -> Text | 
  | 
| -> Int64 | 
  | 
| -> m () | 
Deprecated: (Since version 1.8)Use ShaderEffect instead.
Sets the GLSL source code to be used by a Shader for the vertex
 program.
Since: 0.6
Properties
compiled
Whether the shader is compiled and linked, ready for use in the GL context.
Since: 0.8
getShaderCompiled :: (MonadIO m, IsShader o) => o -> m Bool Source #
Get the value of the “compiled” property.
 When overloading is enabled, this is equivalent to
get shader #compiled
enabled
Whether the shader is currently used in the GL rendering pipeline.
Since: 0.6
constructShaderEnabled :: (IsShader o, MonadIO m) => Bool -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “enabled” property. This is rarely needed directly, but it is used by new.
getShaderEnabled :: (MonadIO m, IsShader o) => o -> m Bool Source #
Get the value of the “enabled” property.
 When overloading is enabled, this is equivalent to
get shader #enabled
setShaderEnabled :: (MonadIO m, IsShader o) => o -> Bool -> m () Source #
Set the value of the “enabled” property.
 When overloading is enabled, this is equivalent to
setshader [ #enabled:=value ]
fragmentSource
GLSL source code for the fragment shader part of the shader program.
Since: 0.6
clearShaderFragmentSource :: (MonadIO m, IsShader o) => o -> m () Source #
Set the value of the “fragment-source” property to Nothing.
 When overloading is enabled, this is equivalent to
clear #fragmentSource
constructShaderFragmentSource :: (IsShader o, MonadIO m) => Text -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “fragment-source” property. This is rarely needed directly, but it is used by new.
getShaderFragmentSource :: (MonadIO m, IsShader o) => o -> m Text Source #
Get the value of the “fragment-source” property.
 When overloading is enabled, this is equivalent to
get shader #fragmentSource
setShaderFragmentSource :: (MonadIO m, IsShader o) => o -> Text -> m () Source #
Set the value of the “fragment-source” property.
 When overloading is enabled, this is equivalent to
setshader [ #fragmentSource:=value ]
vertexSource
GLSL source code for the vertex shader part of the shader program, if any
Since: 0.6
clearShaderVertexSource :: (MonadIO m, IsShader o) => o -> m () Source #
Set the value of the “vertex-source” property to Nothing.
 When overloading is enabled, this is equivalent to
clear #vertexSource
constructShaderVertexSource :: (IsShader o, MonadIO m) => Text -> m (GValueConstruct o) Source #
Construct a GValueConstruct with valid value for the “vertex-source” property. This is rarely needed directly, but it is used by new.
getShaderVertexSource :: (MonadIO m, IsShader o) => o -> m Text Source #
Get the value of the “vertex-source” property.
 When overloading is enabled, this is equivalent to
get shader #vertexSource
setShaderVertexSource :: (MonadIO m, IsShader o) => o -> Text -> m () Source #
Set the value of the “vertex-source” property.
 When overloading is enabled, this is equivalent to
setshader [ #vertexSource:=value ]