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

data RawTMultiGraph

newtype TMultiGraph = TMultiGraph (Ptr RawTMultiGraph)
                        deriving (TMultiGraph -> TMultiGraph -> Bool
(TMultiGraph -> TMultiGraph -> Bool)
-> (TMultiGraph -> TMultiGraph -> Bool) -> Eq TMultiGraph
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: TMultiGraph -> TMultiGraph -> Bool
== :: TMultiGraph -> TMultiGraph -> Bool
$c/= :: TMultiGraph -> TMultiGraph -> Bool
/= :: TMultiGraph -> TMultiGraph -> Bool
Eq, Eq TMultiGraph
Eq TMultiGraph
-> (TMultiGraph -> TMultiGraph -> Ordering)
-> (TMultiGraph -> TMultiGraph -> Bool)
-> (TMultiGraph -> TMultiGraph -> Bool)
-> (TMultiGraph -> TMultiGraph -> Bool)
-> (TMultiGraph -> TMultiGraph -> Bool)
-> (TMultiGraph -> TMultiGraph -> TMultiGraph)
-> (TMultiGraph -> TMultiGraph -> TMultiGraph)
-> Ord TMultiGraph
TMultiGraph -> TMultiGraph -> Bool
TMultiGraph -> TMultiGraph -> Ordering
TMultiGraph -> TMultiGraph -> TMultiGraph
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 :: TMultiGraph -> TMultiGraph -> Ordering
compare :: TMultiGraph -> TMultiGraph -> Ordering
$c< :: TMultiGraph -> TMultiGraph -> Bool
< :: TMultiGraph -> TMultiGraph -> Bool
$c<= :: TMultiGraph -> TMultiGraph -> Bool
<= :: TMultiGraph -> TMultiGraph -> Bool
$c> :: TMultiGraph -> TMultiGraph -> Bool
> :: TMultiGraph -> TMultiGraph -> Bool
$c>= :: TMultiGraph -> TMultiGraph -> Bool
>= :: TMultiGraph -> TMultiGraph -> Bool
$cmax :: TMultiGraph -> TMultiGraph -> TMultiGraph
max :: TMultiGraph -> TMultiGraph -> TMultiGraph
$cmin :: TMultiGraph -> TMultiGraph -> TMultiGraph
min :: TMultiGraph -> TMultiGraph -> TMultiGraph
Ord, Int -> TMultiGraph -> ShowS
[TMultiGraph] -> ShowS
TMultiGraph -> String
(Int -> TMultiGraph -> ShowS)
-> (TMultiGraph -> String)
-> ([TMultiGraph] -> ShowS)
-> Show TMultiGraph
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> TMultiGraph -> ShowS
showsPrec :: Int -> TMultiGraph -> ShowS
$cshow :: TMultiGraph -> String
show :: TMultiGraph -> String
$cshowList :: [TMultiGraph] -> ShowS
showList :: [TMultiGraph] -> ShowS
Show)

instance () => FPtr (TMultiGraph) where
        type Raw TMultiGraph = RawTMultiGraph
        get_fptr :: TMultiGraph -> Ptr (Raw TMultiGraph)
get_fptr (TMultiGraph Ptr RawTMultiGraph
ptr) = Ptr (Raw TMultiGraph)
Ptr RawTMultiGraph
ptr
        cast_fptr_to_obj :: Ptr (Raw TMultiGraph) -> TMultiGraph
cast_fptr_to_obj = Ptr (Raw TMultiGraph) -> TMultiGraph
Ptr RawTMultiGraph -> TMultiGraph
TMultiGraph