{-# LINE 1 "src/HROOT/Class/TObject/FFI.hsc" #-}
{-# LANGUAGE ForeignFunctionInterface #-}
{-# LINE 2 "src/HROOT/Class/TObject/FFI.hsc" #-}

-- module HROOT.Class.FFI where

module HROOT.Class.TObject.FFI where


import Foreign.C            
import Foreign.Ptr

-- import HROOT.Class.Interface

-- #include ""

import HROOT.Class.TObject.RawType
import HROOT.Class.TClass.RawType


{-# LINE 19 "src/HROOT/Class/TObject/FFI.hsc" #-}

foreign import ccall "HROOTTObject.h TObject_delete" c_tobject_delete 
  :: (Ptr RawTObject) -> IO ()
foreign import ccall "HROOTTObject.h TObject_newTObject" c_tobject_newtobject 
  :: IO (Ptr RawTObject)
foreign import ccall "HROOTTObject.h TObject_Draw" c_tobject_draw 
  :: (Ptr RawTObject) -> CString -> IO ()
foreign import ccall "HROOTTObject.h TObject_FindObject" c_tobject_findobject 
  :: (Ptr RawTObject) -> CString -> IO (Ptr RawTObject)
foreign import ccall "HROOTTObject.h TObject_GetName" c_tobject_getname 
  :: (Ptr RawTObject) -> IO CString
foreign import ccall "HROOTTObject.h TObject_IsA" c_tobject_isa 
  :: (Ptr RawTObject) -> IO (Ptr RawTClass)
foreign import ccall "HROOTTObject.h TObject_IsFolder" c_tobject_isfolder 
  :: (Ptr RawTObject) -> IO CInt
foreign import ccall "HROOTTObject.h TObject_IsEqual" c_tobject_isequal 
  :: (Ptr RawTObject) -> (Ptr RawTObject) -> IO CInt
foreign import ccall "HROOTTObject.h TObject_IsSortable" c_tobject_issortable 
  :: (Ptr RawTObject) -> IO CInt
foreign import ccall "HROOTTObject.h TObject_tObjectIsOnHeap" c_tobject_tobjectisonheap 
  :: (Ptr RawTObject) -> IO CInt
foreign import ccall "HROOTTObject.h TObject_tObjectIsZombie" c_tobject_tobjectiszombie 
  :: (Ptr RawTObject) -> IO CInt
foreign import ccall "HROOTTObject.h TObject_Paint" c_tobject_paint 
  :: (Ptr RawTObject) -> CString -> IO ()
foreign import ccall "HROOTTObject.h TObject_printObj" c_tobject_printobj 
  :: (Ptr RawTObject) -> CString -> IO ()
foreign import ccall "HROOTTObject.h TObject_RecursiveRemove" c_tobject_recursiveremove 
  :: (Ptr RawTObject) -> (Ptr RawTObject) -> IO ()
foreign import ccall "HROOTTObject.h TObject_SaveAs" c_tobject_saveas 
  :: (Ptr RawTObject) -> CString -> CString -> IO ()
foreign import ccall "HROOTTObject.h TObject_UseCurrentStyle" c_tobject_usecurrentstyle 
  :: (Ptr RawTObject) -> IO ()
foreign import ccall "HROOTTObject.h TObject_Write" c_tobject_write 
  :: (Ptr RawTObject) -> CString -> CInt -> CInt -> IO CInt