-- GENERATED by C->Haskell Compiler, version 0.16.3 Crystal Seed, 24 Jan 2009 (Haskell) -- Edit the ORIGNAL .chs file instead! {-# LINE 1 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-}{-# LANGUAGE ForeignFunctionInterface #-} {-# LANGUAGE TypeSynonymInstances #-} -- This source file is part of HGamer3D -- (A project to enable 3D game development in Haskell) -- For the latest info, see http://www.althainz.de/HGamer3D.html -- -- (c) 2011-2013 Peter Althainz -- -- The files are part of HGamer3D (www.hgamer3d.org) -- -- Licensed under the Apache License, Version 2.0 (the "License"); -- you may not use this file except in compliance with the License. -- You may obtain a copy of the License at -- -- http://www.apache.org/licenses/LICENSE-2.0 -- -- Unless required by applicable law or agreed to in writing, software -- distributed under the License is distributed on an "AS IS" BASIS, -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -- See the License for the specific language governing permissions and -- limitations under the License. -- -- ClassMaterial.chs -- module HGamer3D.Bindings.Ogre.ClassMaterial where import Foreign import Foreign.Ptr import Foreign.C import HGamer3D.Data.HG3DClass import HGamer3D.Data.Vector import HGamer3D.Data.Colour import HGamer3D.Data.Angle import HGamer3D.Bindings.Ogre.Utils {-# LINE 42 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} import HGamer3D.Bindings.Ogre.ClassPtr {-# LINE 43 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} import HGamer3D.Bindings.Ogre.StructHG3DClass {-# LINE 44 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} import HGamer3D.Bindings.Ogre.StructSharedPtr {-# LINE 45 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} import HGamer3D.Bindings.Ogre.StructColour {-# LINE 46 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function ~Material -} delete :: HG3DClass -> IO () delete a1 = withHG3DClass a1 $ \a1' -> delete'_ a1' >>= \res -> return () {-# LINE 51 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function isTransparent -} isTransparent :: HG3DClass -> IO (Bool) isTransparent a1 = withHG3DClass a1 $ \a1' -> alloca $ \a2' -> isTransparent'_ a1' a2' >>= \res -> peekBoolUtil a2'>>= \a2'' -> return (a2'') {-# LINE 56 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setReceiveShadows -} setReceiveShadows :: HG3DClass -> Bool -> IO () setReceiveShadows a1 a2 = withHG3DClass a1 $ \a1' -> let {a2' = fromBool a2} in setReceiveShadows'_ a1' a2' >>= \res -> return () {-# LINE 61 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function getReceiveShadows -} getReceiveShadows :: HG3DClass -> IO (Bool) getReceiveShadows a1 = withHG3DClass a1 $ \a1' -> alloca $ \a2' -> getReceiveShadows'_ a1' a2' >>= \res -> peekBoolUtil a2'>>= \a2'' -> return (a2'') {-# LINE 66 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setTransparencyCastsShadows -} setTransparencyCastsShadows :: HG3DClass -> Bool -> IO () setTransparencyCastsShadows a1 a2 = withHG3DClass a1 $ \a1' -> let {a2' = fromBool a2} in setTransparencyCastsShadows'_ a1' a2' >>= \res -> return () {-# LINE 71 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function getTransparencyCastsShadows -} getTransparencyCastsShadows :: HG3DClass -> IO (Bool) getTransparencyCastsShadows a1 = withHG3DClass a1 $ \a1' -> alloca $ \a2' -> getTransparencyCastsShadows'_ a1' a2' >>= \res -> peekBoolUtil a2'>>= \a2'' -> return (a2'') {-# LINE 76 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function getNumTechniques -} getNumTechniques :: HG3DClass -> IO (Int) getNumTechniques a1 = withHG3DClass a1 $ \a1' -> alloca $ \a2' -> getNumTechniques'_ a1' a2' >>= \res -> peekIntConv a2'>>= \a2'' -> return (a2'') {-# LINE 81 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function removeTechnique -} removeTechnique :: HG3DClass -> Int -> IO () removeTechnique a1 a2 = withHG3DClass a1 $ \a1' -> let {a2' = fromIntegral a2} in removeTechnique'_ a1' a2' >>= \res -> return () {-# LINE 86 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function removeAllTechniques -} removeAllTechniques :: HG3DClass -> IO () removeAllTechniques a1 = withHG3DClass a1 $ \a1' -> removeAllTechniques'_ a1' >>= \res -> return () {-# LINE 90 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function getNumSupportedTechniques -} getNumSupportedTechniques :: HG3DClass -> IO (Int) getNumSupportedTechniques a1 = withHG3DClass a1 $ \a1' -> alloca $ \a2' -> getNumSupportedTechniques'_ a1' a2' >>= \res -> peekIntConv a2'>>= \a2'' -> return (a2'') {-# LINE 95 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function getUnsupportedTechniquesExplanation -} getUnsupportedTechniquesExplanation :: HG3DClass -> IO (String) getUnsupportedTechniquesExplanation a1 = withHG3DClass a1 $ \a1' -> alloc64k $ \a2' -> getUnsupportedTechniquesExplanation'_ a1' a2' >>= \res -> peekCString a2'>>= \a2'' -> return (a2'') {-# LINE 100 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function getNumLodLevels -} getNumLodLevels :: HG3DClass -> Int -> IO (Int) getNumLodLevels a1 a2 = withHG3DClass a1 $ \a1' -> let {a2' = fromIntegral a2} in alloca $ \a3' -> getNumLodLevels'_ a1' a2' a3' >>= \res -> peekIntConv a3'>>= \a3'' -> return (a3'') {-# LINE 106 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function getNumLodLevels2 -} getNumLodLevels2 :: HG3DClass -> String -> IO (Int) getNumLodLevels2 a1 a2 = withHG3DClass a1 $ \a1' -> withCString a2 $ \a2' -> alloca $ \a3' -> getNumLodLevels2'_ a1' a2' a3' >>= \res -> peekIntConv a3'>>= \a3'' -> return (a3'') {-# LINE 112 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function clone -} clone :: HG3DClass -> String -> Bool -> String -> IO (SharedPtr) clone a1 a2 a3 a4 = withHG3DClass a1 $ \a1' -> withCString a2 $ \a2' -> let {a3' = fromBool a3} in withCString a4 $ \a4' -> alloca $ \a5' -> clone'_ a1' a2' a3' a4' a5' >>= \res -> peekSharedPtr a5'>>= \a5'' -> return (a5'') {-# LINE 120 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function copyDetailsTo -} copyDetailsTo :: HG3DClass -> IO (SharedPtr) copyDetailsTo a1 = withHG3DClass a1 $ \a1' -> alloca $ \a2' -> copyDetailsTo'_ a1' a2' >>= \res -> peekSharedPtr a2'>>= \a2'' -> return (a2'') {-# LINE 125 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function compile -} compile :: HG3DClass -> Bool -> IO () compile a1 a2 = withHG3DClass a1 $ \a1' -> let {a2' = fromBool a2} in compile'_ a1' a2' >>= \res -> return () {-# LINE 130 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setPointSize -} setPointSize :: HG3DClass -> Float -> IO () setPointSize a1 a2 = withHG3DClass a1 $ \a1' -> let {a2' = realToFrac a2} in setPointSize'_ a1' a2' >>= \res -> return () {-# LINE 135 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setAmbient -} setAmbient :: HG3DClass -> Float -> Float -> Float -> IO () setAmbient a1 a2 a3 a4 = withHG3DClass a1 $ \a1' -> let {a2' = realToFrac a2} in let {a3' = realToFrac a3} in let {a4' = realToFrac a4} in setAmbient'_ a1' a2' a3' a4' >>= \res -> return () {-# LINE 142 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setAmbient2 -} setAmbient2 :: HG3DClass -> Colour -> IO () setAmbient2 a1 a2 = withHG3DClass a1 $ \a1' -> withColour a2 $ \a2' -> setAmbient2'_ a1' a2' >>= \res -> return () {-# LINE 147 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setDiffuse -} setDiffuse :: HG3DClass -> Float -> Float -> Float -> Float -> IO () setDiffuse a1 a2 a3 a4 a5 = withHG3DClass a1 $ \a1' -> let {a2' = realToFrac a2} in let {a3' = realToFrac a3} in let {a4' = realToFrac a4} in let {a5' = realToFrac a5} in setDiffuse'_ a1' a2' a3' a4' a5' >>= \res -> return () {-# LINE 155 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setDiffuse2 -} setDiffuse2 :: HG3DClass -> Colour -> IO () setDiffuse2 a1 a2 = withHG3DClass a1 $ \a1' -> withColour a2 $ \a2' -> setDiffuse2'_ a1' a2' >>= \res -> return () {-# LINE 160 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setSpecular -} setSpecular :: HG3DClass -> Float -> Float -> Float -> Float -> IO () setSpecular a1 a2 a3 a4 a5 = withHG3DClass a1 $ \a1' -> let {a2' = realToFrac a2} in let {a3' = realToFrac a3} in let {a4' = realToFrac a4} in let {a5' = realToFrac a5} in setSpecular'_ a1' a2' a3' a4' a5' >>= \res -> return () {-# LINE 168 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setSpecular2 -} setSpecular2 :: HG3DClass -> Colour -> IO () setSpecular2 a1 a2 = withHG3DClass a1 $ \a1' -> withColour a2 $ \a2' -> setSpecular2'_ a1' a2' >>= \res -> return () {-# LINE 173 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setShininess -} setShininess :: HG3DClass -> Float -> IO () setShininess a1 a2 = withHG3DClass a1 $ \a1' -> let {a2' = realToFrac a2} in setShininess'_ a1' a2' >>= \res -> return () {-# LINE 178 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setSelfIllumination -} setSelfIllumination :: HG3DClass -> Float -> Float -> Float -> IO () setSelfIllumination a1 a2 a3 a4 = withHG3DClass a1 $ \a1' -> let {a2' = realToFrac a2} in let {a3' = realToFrac a3} in let {a4' = realToFrac a4} in setSelfIllumination'_ a1' a2' a3' a4' >>= \res -> return () {-# LINE 185 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setSelfIllumination2 -} setSelfIllumination2 :: HG3DClass -> Colour -> IO () setSelfIllumination2 a1 a2 = withHG3DClass a1 $ \a1' -> withColour a2 $ \a2' -> setSelfIllumination2'_ a1' a2' >>= \res -> return () {-# LINE 190 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setDepthCheckEnabled -} setDepthCheckEnabled :: HG3DClass -> Bool -> IO () setDepthCheckEnabled a1 a2 = withHG3DClass a1 $ \a1' -> let {a2' = fromBool a2} in setDepthCheckEnabled'_ a1' a2' >>= \res -> return () {-# LINE 195 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setDepthWriteEnabled -} setDepthWriteEnabled :: HG3DClass -> Bool -> IO () setDepthWriteEnabled a1 a2 = withHG3DClass a1 $ \a1' -> let {a2' = fromBool a2} in setDepthWriteEnabled'_ a1' a2' >>= \res -> return () {-# LINE 200 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setColourWriteEnabled -} setColourWriteEnabled :: HG3DClass -> Bool -> IO () setColourWriteEnabled a1 a2 = withHG3DClass a1 $ \a1' -> let {a2' = fromBool a2} in setColourWriteEnabled'_ a1' a2' >>= \res -> return () {-# LINE 205 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setLightingEnabled -} setLightingEnabled :: HG3DClass -> Bool -> IO () setLightingEnabled a1 a2 = withHG3DClass a1 $ \a1' -> let {a2' = fromBool a2} in setLightingEnabled'_ a1' a2' >>= \res -> return () {-# LINE 210 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setDepthBias -} setDepthBias :: HG3DClass -> Float -> Float -> IO () setDepthBias a1 a2 a3 = withHG3DClass a1 $ \a1' -> let {a2' = realToFrac a2} in let {a3' = realToFrac a3} in setDepthBias'_ a1' a2' a3' >>= \res -> return () {-# LINE 216 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function setTextureAnisotropy -} setTextureAnisotropy :: HG3DClass -> Int -> IO () setTextureAnisotropy a1 a2 = withHG3DClass a1 $ \a1' -> let {a2' = fromIntegral a2} in setTextureAnisotropy'_ a1' a2' >>= \res -> return () {-# LINE 221 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function touch -} touch :: HG3DClass -> IO () touch a1 = withHG3DClass a1 $ \a1' -> touch'_ a1' >>= \res -> return () {-# LINE 225 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} {- function getCompilationRequired -} getCompilationRequired :: HG3DClass -> IO (Bool) getCompilationRequired a1 = withHG3DClass a1 $ \a1' -> alloca $ \a2' -> getCompilationRequired'_ a1' a2' >>= \res -> peekBoolUtil a2'>>= \a2'' -> return (a2'') {-# LINE 230 ".\\HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs" #-} foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_destruct" delete'_ :: ((HG3DClassPtr) -> (IO ())) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_isTransparent" isTransparent'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setReceiveShadows" setReceiveShadows'_ :: ((HG3DClassPtr) -> (CInt -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_getReceiveShadows" getReceiveShadows'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setTransparencyCastsShadows" setTransparencyCastsShadows'_ :: ((HG3DClassPtr) -> (CInt -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_getTransparencyCastsShadows" getTransparencyCastsShadows'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_getNumTechniques" getNumTechniques'_ :: ((HG3DClassPtr) -> ((Ptr CUShort) -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_removeTechnique" removeTechnique'_ :: ((HG3DClassPtr) -> (CUShort -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_removeAllTechniques" removeAllTechniques'_ :: ((HG3DClassPtr) -> (IO ())) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_getNumSupportedTechniques" getNumSupportedTechniques'_ :: ((HG3DClassPtr) -> ((Ptr CUShort) -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_getUnsupportedTechniquesExplanation" getUnsupportedTechniquesExplanation'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_getNumLodLevels" getNumLodLevels'_ :: ((HG3DClassPtr) -> (CUShort -> ((Ptr CUShort) -> (IO ())))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_getNumLodLevels2" getNumLodLevels2'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> ((Ptr CUShort) -> (IO ())))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_clone" clone'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (CInt -> ((Ptr CChar) -> ((SharedPtrPtr) -> (IO ())))))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_copyDetailsTo" copyDetailsTo'_ :: ((HG3DClassPtr) -> ((SharedPtrPtr) -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_compile" compile'_ :: ((HG3DClassPtr) -> (CInt -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setPointSize" setPointSize'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setAmbient" setAmbient'_ :: ((HG3DClassPtr) -> (CFloat -> (CFloat -> (CFloat -> (IO ()))))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setAmbient2" setAmbient2'_ :: ((HG3DClassPtr) -> ((ColourPtr) -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setDiffuse" setDiffuse'_ :: ((HG3DClassPtr) -> (CFloat -> (CFloat -> (CFloat -> (CFloat -> (IO ())))))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setDiffuse2" setDiffuse2'_ :: ((HG3DClassPtr) -> ((ColourPtr) -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setSpecular" setSpecular'_ :: ((HG3DClassPtr) -> (CFloat -> (CFloat -> (CFloat -> (CFloat -> (IO ())))))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setSpecular2" setSpecular2'_ :: ((HG3DClassPtr) -> ((ColourPtr) -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setShininess" setShininess'_ :: ((HG3DClassPtr) -> (CFloat -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setSelfIllumination" setSelfIllumination'_ :: ((HG3DClassPtr) -> (CFloat -> (CFloat -> (CFloat -> (IO ()))))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setSelfIllumination2" setSelfIllumination2'_ :: ((HG3DClassPtr) -> ((ColourPtr) -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setDepthCheckEnabled" setDepthCheckEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setDepthWriteEnabled" setDepthWriteEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setColourWriteEnabled" setColourWriteEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setLightingEnabled" setLightingEnabled'_ :: ((HG3DClassPtr) -> (CInt -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setDepthBias" setDepthBias'_ :: ((HG3DClassPtr) -> (CFloat -> (CFloat -> (IO ())))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_setTextureAnisotropy" setTextureAnisotropy'_ :: ((HG3DClassPtr) -> (CInt -> (IO ()))) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_touch" touch'_ :: ((HG3DClassPtr) -> (IO ())) foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassMaterial.chs.h ogre_mtrl_getCompilationRequired" getCompilationRequired'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))