module HROOT.Class.TDatime.Implementation where
import HROOT.TypeCast
import HROOT.Class.TDatime.RawType
import HROOT.Class.TDatime.FFI
import HROOT.Class.TDatime.Interface
import HROOT.Class.TDatime.Cast
import HROOT.Class.Deletable.RawType
import HROOT.Class.Deletable.Cast
import HROOT.Class.Deletable.Interface
import Data.Word
import Foreign.ForeignPtr
import System.IO.Unsafe
instance ITDatime TDatime where
convert = xform1 c_tdatime_convert
setTDatime = xform1 c_tdatime_settdatime
instance IDeletable TDatime where
delete = xform0 c_tdatime_delete
instance ITDatime (Exist TDatime) where
convert (ETDatime x) = convert x
setTDatime (ETDatime x) = setTDatime x
instance IDeletable (Exist TDatime) where
delete (ETDatime x) = delete x
newTDatime :: Int -> Int -> Int -> Int -> Int -> Int -> IO TDatime
newTDatime = xform5 c_tdatime_newtdatime
tDatimeGetDay :: TDatime -> IO Int
tDatimeGetDay = xform0 c_tdatime_tdatimegetday
tDatimeGetHour :: TDatime -> IO Int
tDatimeGetHour = xform0 c_tdatime_tdatimegethour
tDatimeGetMinute :: TDatime -> IO Int
tDatimeGetMinute = xform0 c_tdatime_tdatimegetminute
tDatimeGetSecond :: TDatime -> IO Int
tDatimeGetSecond = xform0 c_tdatime_tdatimegetsecond
tDatimeGetYear :: TDatime -> IO Int
tDatimeGetYear = xform0 c_tdatime_tdatimegetyear
tDatimeGetMonth :: TDatime -> IO Int
tDatimeGetMonth = xform0 c_tdatime_tdatimegetmonth
instance FPtr (Exist TDatime) where
type Raw (Exist TDatime) = RawTDatime
get_fptr (ETDatime obj) = castForeignPtr (get_fptr obj)
cast_fptr_to_obj fptr = ETDatime (cast_fptr_to_obj (fptr :: ForeignPtr RawTDatime) :: TDatime)