packages feed

HROOT-hist-0.9: src/HROOT/Hist/TAxis/Implementation.hs

{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances,
  ForeignFunctionInterface, IncoherentInstances,
  MultiParamTypeClasses, OverlappingInstances, TypeFamilies,
  TypeSynonymInstances #-}
module HROOT.Hist.TAxis.Implementation where
import FFICXX.Runtime.Cast
import Data.Word
import Foreign.C
import Foreign.Ptr
import System.IO.Unsafe
import HROOT.Hist.TAxis.RawType
import HROOT.Hist.TAxis.FFI
import HROOT.Hist.TAxis.Interface
import HROOT.Hist.TAxis.Cast
import HROOT.Core.TClass.RawType
import HROOT.Core.TClass.Cast
import HROOT.Core.TClass.Interface
import HROOT.Core.TNamed.RawType
import HROOT.Core.TNamed.Cast
import HROOT.Core.TNamed.Interface
import HROOT.Core.TAttAxis.RawType
import HROOT.Core.TAttAxis.Cast
import HROOT.Core.TAttAxis.Interface
import HROOT.Core.TObject.RawType
import HROOT.Core.TObject.Cast
import HROOT.Core.TObject.Interface
import HROOT.Core.Deletable.RawType
import HROOT.Core.Deletable.Cast
import HROOT.Core.Deletable.Interface

instance ITAxis TAxis where
        findBinTAxis = xform1 c_taxis_findbintaxis
        findFixBinTAxis = xform1 c_taxis_findfixbintaxis
        getBinCenterTAxis = xform1 c_taxis_getbincentertaxis
        getBinCenterLog = xform1 c_taxis_getbincenterlog
        getBinUpEdge = xform1 c_taxis_getbinupedge
        setTimeDisplay = xform1 c_taxis_settimedisplay
        setTimeFormat = xform1 c_taxis_settimeformat
        setTimeOffset = xform2 c_taxis_settimeoffset

instance ITNamed TAxis where
        setName = xform1 c_taxis_setname
        setNameTitle = xform2 c_taxis_setnametitle
        setTitle = xform1 c_taxis_settitle

instance ITAttAxis TAxis where
        getNdivisions = xform0 c_taxis_getndivisions
        getAxisColor = xform0 c_taxis_getaxiscolor
        getLabelColor = xform0 c_taxis_getlabelcolor
        getLabelFont = xform0 c_taxis_getlabelfont
        getLabelOffset = xform0 c_taxis_getlabeloffset
        getLabelSize = xform0 c_taxis_getlabelsize
        getTitleOffset = xform0 c_taxis_gettitleoffset
        getTitleSize = xform0 c_taxis_gettitlesize
        getTickLength = xform0 c_taxis_getticklength
        getTitleFont = xform0 c_taxis_gettitlefont
        setNdivisions = xform2 c_taxis_setndivisions
        setAxisColor = xform1 c_taxis_setaxiscolor
        setLabelColor = xform1 c_taxis_setlabelcolor
        setLabelFont = xform1 c_taxis_setlabelfont
        setLabelOffset = xform1 c_taxis_setlabeloffset
        setLabelSize = xform1 c_taxis_setlabelsize
        setTickLength = xform1 c_taxis_setticklength
        setTitleOffset = xform1 c_taxis_settitleoffset
        setTitleSize = xform1 c_taxis_settitlesize
        setTitleColor = xform1 c_taxis_settitlecolor
        setTitleFont = xform1 c_taxis_settitlefont

instance ITObject TAxis where
        draw = xform1 c_taxis_draw
        findObject = xform1 c_taxis_findobject
        getName = xform0 c_taxis_getname
        isA = xform0 c_taxis_isa
        paint = xform1 c_taxis_paint
        printObj = xform1 c_taxis_printobj
        saveAs = xform2 c_taxis_saveas
        write = xform3 c_taxis_write

instance IDeletable TAxis where
        delete = xform0 c_taxis_delete

newTAxis :: CInt -> CDouble -> CDouble -> IO TAxis
newTAxis = xform2 c_taxis_newtaxis

tAxisGetCenterLabels :: TAxis -> IO CInt
tAxisGetCenterLabels = xform0 c_taxis_taxisgetcenterlabels

tAxisGetCenterTitle :: TAxis -> IO CInt
tAxisGetCenterTitle = xform0 c_taxis_taxisgetcentertitle