module HGamer3D.Bindings.Ogre.ClassResource 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
import HGamer3D.Bindings.Ogre.ClassPtr
import HGamer3D.Bindings.Ogre.StructHG3DClass
delete :: HG3DClass -> IO ()
delete a1 =
  withHG3DClass a1 $ \a1' -> 
  delete'_ a1' >>= \res ->
  return ()
prepare :: HG3DClass -> Bool -> IO ()
prepare a1 a2 =
  withHG3DClass a1 $ \a1' -> 
  let {a2' = fromBool a2} in 
  prepare'_ a1' a2' >>= \res ->
  return ()
load :: HG3DClass -> Bool -> IO ()
load a1 a2 =
  withHG3DClass a1 $ \a1' -> 
  let {a2' = fromBool a2} in 
  load'_ a1' a2' >>= \res ->
  return ()
reload :: HG3DClass -> IO ()
reload a1 =
  withHG3DClass a1 $ \a1' -> 
  reload'_ a1' >>= \res ->
  return ()
isReloadable :: HG3DClass -> IO (Bool)
isReloadable a1 =
  withHG3DClass a1 $ \a1' -> 
  alloca $ \a2' -> 
  isReloadable'_ a1' a2' >>= \res ->
  peekBoolUtil  a2'>>= \a2'' -> 
  return (a2'')
isManuallyLoaded :: HG3DClass -> IO (Bool)
isManuallyLoaded a1 =
  withHG3DClass a1 $ \a1' -> 
  alloca $ \a2' -> 
  isManuallyLoaded'_ a1' a2' >>= \res ->
  peekBoolUtil  a2'>>= \a2'' -> 
  return (a2'')
unload :: HG3DClass -> IO ()
unload a1 =
  withHG3DClass a1 $ \a1' -> 
  unload'_ a1' >>= \res ->
  return ()
getSize :: HG3DClass -> IO (Int)
getSize a1 =
  withHG3DClass a1 $ \a1' -> 
  alloca $ \a2' -> 
  getSize'_ a1' a2' >>= \res ->
  peekIntConv  a2'>>= \a2'' -> 
  return (a2'')
touch :: HG3DClass -> IO ()
touch a1 =
  withHG3DClass a1 $ \a1' -> 
  touch'_ a1' >>= \res ->
  return ()
getName :: HG3DClass -> IO (String)
getName a1 =
  withHG3DClass a1 $ \a1' -> 
  alloc64k $ \a2' -> 
  getName'_ a1' a2' >>= \res ->
  peekCString  a2'>>= \a2'' -> 
  return (a2'')
isPrepared :: HG3DClass -> IO (Bool)
isPrepared a1 =
  withHG3DClass a1 $ \a1' -> 
  alloca $ \a2' -> 
  isPrepared'_ a1' a2' >>= \res ->
  peekBoolUtil  a2'>>= \a2'' -> 
  return (a2'')
isLoaded :: HG3DClass -> IO (Bool)
isLoaded a1 =
  withHG3DClass a1 $ \a1' -> 
  alloca $ \a2' -> 
  isLoaded'_ a1' a2' >>= \res ->
  peekBoolUtil  a2'>>= \a2'' -> 
  return (a2'')
isLoading :: HG3DClass -> IO (Bool)
isLoading a1 =
  withHG3DClass a1 $ \a1' -> 
  alloca $ \a2' -> 
  isLoading'_ a1' a2' >>= \res ->
  peekBoolUtil  a2'>>= \a2'' -> 
  return (a2'')
isBackgroundLoaded :: HG3DClass -> IO (Bool)
isBackgroundLoaded a1 =
  withHG3DClass a1 $ \a1' -> 
  alloca $ \a2' -> 
  isBackgroundLoaded'_ a1' a2' >>= \res ->
  peekBoolUtil  a2'>>= \a2'' -> 
  return (a2'')
setBackgroundLoaded :: HG3DClass -> Bool -> IO ()
setBackgroundLoaded a1 a2 =
  withHG3DClass a1 $ \a1' -> 
  let {a2' = fromBool a2} in 
  setBackgroundLoaded'_ a1' a2' >>= \res ->
  return ()
escalateLoading :: HG3DClass -> IO ()
escalateLoading a1 =
  withHG3DClass a1 $ \a1' -> 
  escalateLoading'_ a1' >>= \res ->
  return ()
getGroup :: HG3DClass -> IO (String)
getGroup a1 =
  withHG3DClass a1 $ \a1' -> 
  alloc64k $ \a2' -> 
  getGroup'_ a1' a2' >>= \res ->
  peekCString  a2'>>= \a2'' -> 
  return (a2'')
changeGroupOwnership :: HG3DClass -> String -> IO ()
changeGroupOwnership a1 a2 =
  withHG3DClass a1 $ \a1' -> 
  withCString a2 $ \a2' -> 
  changeGroupOwnership'_ a1' a2' >>= \res ->
  return ()
getCreator :: HG3DClass -> IO (HG3DClass)
getCreator a1 =
  withHG3DClass a1 $ \a1' -> 
  alloca $ \a2' -> 
  getCreator'_ a1' a2' >>= \res ->
  peek  a2'>>= \a2'' -> 
  return (a2'')
getOrigin :: HG3DClass -> IO (String)
getOrigin a1 =
  withHG3DClass a1 $ \a1' -> 
  alloc64k $ \a2' -> 
  getOrigin'_ a1' a2' >>= \res ->
  peekCString  a2'>>= \a2'' -> 
  return (a2'')
getStateCount :: HG3DClass -> IO (Int)
getStateCount a1 =
  withHG3DClass a1 $ \a1' -> 
  alloca $ \a2' -> 
  getStateCount'_ a1' a2' >>= \res ->
  peekIntConv  a2'>>= \a2'' -> 
  return (a2'')
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_destruct"
  delete'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_prepare"
  prepare'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_load"
  load'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_reload"
  reload'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_isReloadable"
  isReloadable'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_isManuallyLoaded"
  isManuallyLoaded'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_unload"
  unload'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_getSize"
  getSize'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_touch"
  touch'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_getName"
  getName'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_isPrepared"
  isPrepared'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_isLoaded"
  isLoaded'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_isLoading"
  isLoading'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_isBackgroundLoaded"
  isBackgroundLoaded'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_setBackgroundLoaded"
  setBackgroundLoaded'_ :: ((HG3DClassPtr) -> (CInt -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_escalateLoading"
  escalateLoading'_ :: ((HG3DClassPtr) -> (IO ()))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_getGroup"
  getGroup'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_changeGroupOwnership"
  changeGroupOwnership'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_getCreator"
  getCreator'_ :: ((HG3DClassPtr) -> ((HG3DClassPtr) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_getOrigin"
  getOrigin'_ :: ((HG3DClassPtr) -> ((Ptr CChar) -> (IO ())))
foreign import ccall safe "HGamer3D\\Bindings\\Ogre\\ClassResource.chs.h ogre_rsrc_getStateCount"
  getStateCount'_ :: ((HG3DClassPtr) -> ((Ptr CInt) -> (IO ())))