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

-- module HROOT.Class.FFI where

module HROOT.Core.TSystem.FFI where


import Foreign.C            
import Foreign.Ptr

-- import HROOT.Class.Interface

-- #include ""

import HROOT.Core.TSystem.RawType
import HROOT.Core.TObject.RawType
import HROOT.Core.TClass.RawType


{-# LINE 20 "src/HROOT/Core/TSystem/FFI.hsc" #-}

foreign import ccall "HROOTCoreTSystem.h TSystem_SetName" c_tsystem_setname 
  :: (Ptr RawTSystem) -> CString -> IO ()

foreign import ccall "HROOTCoreTSystem.h TSystem_SetNameTitle" c_tsystem_setnametitle 
  :: (Ptr RawTSystem) -> CString -> CString -> IO ()

foreign import ccall "HROOTCoreTSystem.h TSystem_SetTitle" c_tsystem_settitle 
  :: (Ptr RawTSystem) -> CString -> IO ()

foreign import ccall "HROOTCoreTSystem.h TSystem_Draw" c_tsystem_draw 
  :: (Ptr RawTSystem) -> CString -> IO ()

foreign import ccall "HROOTCoreTSystem.h TSystem_FindObject" c_tsystem_findobject 
  :: (Ptr RawTSystem) -> CString -> IO (Ptr RawTObject)

foreign import ccall "HROOTCoreTSystem.h TSystem_GetName" c_tsystem_getname 
  :: (Ptr RawTSystem) -> IO CString

foreign import ccall "HROOTCoreTSystem.h TSystem_IsA" c_tsystem_isa 
  :: (Ptr RawTSystem) -> IO (Ptr RawTClass)

foreign import ccall "HROOTCoreTSystem.h TSystem_Paint" c_tsystem_paint 
  :: (Ptr RawTSystem) -> CString -> IO ()

foreign import ccall "HROOTCoreTSystem.h TSystem_printObj" c_tsystem_printobj 
  :: (Ptr RawTSystem) -> CString -> IO ()

foreign import ccall "HROOTCoreTSystem.h TSystem_SaveAs" c_tsystem_saveas 
  :: (Ptr RawTSystem) -> CString -> CString -> IO ()

foreign import ccall "HROOTCoreTSystem.h TSystem_Write" c_tsystem_write 
  :: (Ptr RawTSystem) -> CString -> CInt -> CInt -> IO CInt

foreign import ccall "HROOTCoreTSystem.h TSystem_delete" c_tsystem_delete 
  :: (Ptr RawTSystem) -> IO ()

foreign import ccall "HROOTCoreTSystem.h TSystem_ProcessEvents" c_tsystem_processevents 
  :: (Ptr RawTSystem) -> IO CInt