module HROOT.Class.TAttParticle.Interface where
import Data.Word
import Foreign.ForeignPtr
import HROOT.TypeCast
import HROOT.Class.TAttParticle.RawType
import HROOT.Class.TNamed.Interface
class (ITNamed a) => ITAttParticle a where
instance Existable TAttParticle where
data Exist TAttParticle = forall a. (FPtr a, ITAttParticle a) => ETAttParticle a
upcastTAttParticle :: (FPtr a, ITAttParticle a) => a -> TAttParticle
upcastTAttParticle h = let fh = get_fptr h
fh2 :: ForeignPtr RawTAttParticle = castForeignPtr fh
in cast_fptr_to_obj fh2