{-# LANGUAGE ForeignFunctionInterface, TypeFamilies,
  MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances,
  EmptyDataDecls, ExistentialQuantification, ScopedTypeVariables #-}
module HROOT.Hist.TGraph.RawType where
import Foreign.Ptr
import FFICXX.Runtime.Cast

data RawTGraph

newtype TGraph = TGraph (Ptr RawTGraph)
                   deriving (TGraph -> TGraph -> Bool
(TGraph -> TGraph -> Bool)
-> (TGraph -> TGraph -> Bool) -> Eq TGraph
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: TGraph -> TGraph -> Bool
== :: TGraph -> TGraph -> Bool
$c/= :: TGraph -> TGraph -> Bool
/= :: TGraph -> TGraph -> Bool
Eq, Eq TGraph
Eq TGraph
-> (TGraph -> TGraph -> Ordering)
-> (TGraph -> TGraph -> Bool)
-> (TGraph -> TGraph -> Bool)
-> (TGraph -> TGraph -> Bool)
-> (TGraph -> TGraph -> Bool)
-> (TGraph -> TGraph -> TGraph)
-> (TGraph -> TGraph -> TGraph)
-> Ord TGraph
TGraph -> TGraph -> Bool
TGraph -> TGraph -> Ordering
TGraph -> TGraph -> TGraph
forall a.
Eq a
-> (a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: TGraph -> TGraph -> Ordering
compare :: TGraph -> TGraph -> Ordering
$c< :: TGraph -> TGraph -> Bool
< :: TGraph -> TGraph -> Bool
$c<= :: TGraph -> TGraph -> Bool
<= :: TGraph -> TGraph -> Bool
$c> :: TGraph -> TGraph -> Bool
> :: TGraph -> TGraph -> Bool
$c>= :: TGraph -> TGraph -> Bool
>= :: TGraph -> TGraph -> Bool
$cmax :: TGraph -> TGraph -> TGraph
max :: TGraph -> TGraph -> TGraph
$cmin :: TGraph -> TGraph -> TGraph
min :: TGraph -> TGraph -> TGraph
Ord, Int -> TGraph -> ShowS
[TGraph] -> ShowS
TGraph -> String
(Int -> TGraph -> ShowS)
-> (TGraph -> String) -> ([TGraph] -> ShowS) -> Show TGraph
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> TGraph -> ShowS
showsPrec :: Int -> TGraph -> ShowS
$cshow :: TGraph -> String
show :: TGraph -> String
$cshowList :: [TGraph] -> ShowS
showList :: [TGraph] -> ShowS
Show)

instance () => FPtr (TGraph) where
        type Raw TGraph = RawTGraph
        get_fptr :: TGraph -> Ptr (Raw TGraph)
get_fptr (TGraph Ptr RawTGraph
ptr) = Ptr (Raw TGraph)
Ptr RawTGraph
ptr
        cast_fptr_to_obj :: Ptr (Raw TGraph) -> TGraph
cast_fptr_to_obj = Ptr (Raw TGraph) -> TGraph
Ptr RawTGraph -> TGraph
TGraph