{-# LINE 1 "src/HROOT/Graf/TPCON/FFI.hsc" #-}
{-# LANGUAGE ForeignFunctionInterface, InterruptibleFFI #-}
module HROOT.Graf.TPCON.FFI where
import Data.Word
import Data.Int
import Foreign.C
import Foreign.Ptr
import HROOT.Graf.TPCON.RawType
import HROOT.Graf.TPCON.RawType
import HROOT.Core.TObject.RawType
import HROOT.Core.TClass.RawType

foreign import ccall interruptible "HROOTGrafTPCON.h TPCON_SetName"
               c_tpcon_setname :: Ptr RawTPCON -> CString -> IO ()

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_SetNameTitle" c_tpcon_setnametitle ::
               Ptr RawTPCON -> CString -> CString -> IO ()

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_SetTitle" c_tpcon_settitle ::
               Ptr RawTPCON -> CString -> IO ()

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_GetLineColor" c_tpcon_getlinecolor ::
               Ptr RawTPCON -> IO CShort

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_GetLineStyle" c_tpcon_getlinestyle ::
               Ptr RawTPCON -> IO CShort

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_GetLineWidth" c_tpcon_getlinewidth ::
               Ptr RawTPCON -> IO CShort

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_ResetAttLine" c_tpcon_resetattline ::
               Ptr RawTPCON -> CString -> IO ()

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_SetLineAttributes"
               c_tpcon_setlineattributes :: Ptr RawTPCON -> IO ()

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_SetLineColor" c_tpcon_setlinecolor ::
               Ptr RawTPCON -> CShort -> IO ()

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_SetLineStyle" c_tpcon_setlinestyle ::
               Ptr RawTPCON -> CShort -> IO ()

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_SetLineWidth" c_tpcon_setlinewidth ::
               Ptr RawTPCON -> CShort -> IO ()

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_SetFillColor" c_tpcon_setfillcolor ::
               Ptr RawTPCON -> CInt -> IO ()

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_SetFillStyle" c_tpcon_setfillstyle ::
               Ptr RawTPCON -> CInt -> IO ()

foreign import ccall interruptible "HROOTGrafTPCON.h TPCON_Clear"
               c_tpcon_clear :: Ptr RawTPCON -> CString -> IO ()

foreign import ccall interruptible "HROOTGrafTPCON.h TPCON_Draw"
               c_tpcon_draw :: Ptr RawTPCON -> CString -> IO ()

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_FindObject" c_tpcon_findobject ::
               Ptr RawTPCON -> CString -> IO (Ptr RawTObject)

foreign import ccall interruptible "HROOTGrafTPCON.h TPCON_GetName"
               c_tpcon_getname :: Ptr RawTPCON -> IO CString

foreign import ccall interruptible "HROOTGrafTPCON.h TPCON_IsA"
               c_tpcon_isa :: Ptr RawTPCON -> IO (Ptr RawTClass)

foreign import ccall interruptible "HROOTGrafTPCON.h TPCON_Paint"
               c_tpcon_paint :: Ptr RawTPCON -> CString -> IO ()

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_printObj" c_tpcon_printobj ::
               Ptr RawTPCON -> CString -> IO ()

foreign import ccall interruptible "HROOTGrafTPCON.h TPCON_SaveAs"
               c_tpcon_saveas :: Ptr RawTPCON -> CString -> CString -> IO ()

foreign import ccall interruptible "HROOTGrafTPCON.h TPCON_Write"
               c_tpcon_write :: Ptr RawTPCON -> CString -> CInt -> CInt -> IO CInt

foreign import ccall interruptible "HROOTGrafTPCON.h TPCON_Write_"
               c_tpcon_write_ :: Ptr RawTPCON -> IO CInt

foreign import ccall interruptible "HROOTGrafTPCON.h TPCON_delete"
               c_tpcon_delete :: Ptr RawTPCON -> IO ()

foreign import ccall interruptible
               "HROOTGrafTPCON.h TPCON_newTPCON" c_tpcon_newtpcon ::
               CString ->
                 CString -> CString -> CFloat -> CFloat -> CInt -> IO (Ptr RawTPCON)