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

foreign import ccall interruptible "HROOTGrafTArc.h TArc_Clear"
               c_tarc_clear :: Ptr RawTArc -> CString -> IO ()

foreign import ccall interruptible "HROOTGrafTArc.h TArc_Draw"
               c_tarc_draw :: Ptr RawTArc -> CString -> IO ()

foreign import ccall interruptible
               "HROOTGrafTArc.h TArc_FindObject" c_tarc_findobject ::
               Ptr RawTArc -> CString -> IO (Ptr RawTObject)

foreign import ccall interruptible "HROOTGrafTArc.h TArc_GetName"
               c_tarc_getname :: Ptr RawTArc -> IO CString

foreign import ccall interruptible "HROOTGrafTArc.h TArc_IsA"
               c_tarc_isa :: Ptr RawTArc -> IO (Ptr RawTClass)

foreign import ccall interruptible "HROOTGrafTArc.h TArc_Paint"
               c_tarc_paint :: Ptr RawTArc -> CString -> IO ()

foreign import ccall interruptible "HROOTGrafTArc.h TArc_printObj"
               c_tarc_printobj :: Ptr RawTArc -> CString -> IO ()

foreign import ccall interruptible "HROOTGrafTArc.h TArc_SaveAs"
               c_tarc_saveas :: Ptr RawTArc -> CString -> CString -> IO ()

foreign import ccall interruptible "HROOTGrafTArc.h TArc_Write"
               c_tarc_write :: Ptr RawTArc -> CString -> CInt -> CInt -> IO CInt

foreign import ccall interruptible "HROOTGrafTArc.h TArc_Write_"
               c_tarc_write_ :: Ptr RawTArc -> IO CInt

foreign import ccall interruptible
               "HROOTGrafTArc.h TArc_GetLineColor" c_tarc_getlinecolor ::
               Ptr RawTArc -> IO CShort

foreign import ccall interruptible
               "HROOTGrafTArc.h TArc_GetLineStyle" c_tarc_getlinestyle ::
               Ptr RawTArc -> IO CShort

foreign import ccall interruptible
               "HROOTGrafTArc.h TArc_GetLineWidth" c_tarc_getlinewidth ::
               Ptr RawTArc -> IO CShort

foreign import ccall interruptible
               "HROOTGrafTArc.h TArc_ResetAttLine" c_tarc_resetattline ::
               Ptr RawTArc -> CString -> IO ()

foreign import ccall interruptible
               "HROOTGrafTArc.h TArc_SetLineAttributes" c_tarc_setlineattributes
               :: Ptr RawTArc -> IO ()

foreign import ccall interruptible
               "HROOTGrafTArc.h TArc_SetLineColor" c_tarc_setlinecolor ::
               Ptr RawTArc -> CShort -> IO ()

foreign import ccall interruptible
               "HROOTGrafTArc.h TArc_SetLineStyle" c_tarc_setlinestyle ::
               Ptr RawTArc -> CShort -> IO ()

foreign import ccall interruptible
               "HROOTGrafTArc.h TArc_SetLineWidth" c_tarc_setlinewidth ::
               Ptr RawTArc -> CShort -> IO ()

foreign import ccall interruptible
               "HROOTGrafTArc.h TArc_SetFillColor" c_tarc_setfillcolor ::
               Ptr RawTArc -> CInt -> IO ()

foreign import ccall interruptible
               "HROOTGrafTArc.h TArc_SetFillStyle" c_tarc_setfillstyle ::
               Ptr RawTArc -> CInt -> IO ()

foreign import ccall interruptible "HROOTGrafTArc.h TArc_delete"
               c_tarc_delete :: Ptr RawTArc -> IO ()

foreign import ccall interruptible "HROOTGrafTArc.h TArc_newTArc"
               c_tarc_newtarc ::
               CDouble ->
                 CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTArc)