opencv-0.0.2.1: Haskell binding to OpenCV-3.x

Safe HaskellNone
LanguageHaskell2010

OpenCV.Core.Types.Vec

Contents

Documentation

data Vec (dim :: Nat) (depth :: *) Source #

Instances

ToMat Vec2i Source # 
ToMat Vec2f Source # 
ToMat Vec2d Source # 
ToMat Vec3i Source # 
ToMat Vec3f Source # 
ToMat Vec3d Source # 
ToMat Vec4i Source # 
ToMat Vec4f Source # 
ToMat Vec4d Source # 
(IsVec V2 a, Show a) => Show (Vec 2 a) Source # 

Methods

showsPrec :: Int -> Vec 2 a -> ShowS #

show :: Vec 2 a -> String #

showList :: [Vec 2 a] -> ShowS #

(IsVec V3 a, Show a) => Show (Vec 3 a) Source # 

Methods

showsPrec :: Int -> Vec 3 a -> ShowS #

show :: Vec 3 a -> String #

showList :: [Vec 3 a] -> ShowS #

(IsVec V4 a, Show a) => Show (Vec 4 a) Source # 

Methods

showsPrec :: Int -> Vec 4 a -> ShowS #

show :: Vec 4 a -> String #

showList :: [Vec 4 a] -> ShowS #

WithPtr (Vec dim depth) Source # 

Methods

withPtr :: Vec dim depth -> (Ptr (C (Vec dim depth)) -> IO b) -> IO b

type VecDim (Vec dim) Source # 
type VecDim (Vec dim) = dim
type MatDepth (Vec dim depth) Source # 
type MatDepth (Vec dim depth) = S * depth
type MatChannels (Vec dim depth) Source # 
type MatChannels (Vec dim depth) = S Nat 1
type MatShape (Vec dim depth) Source # 
type MatShape (Vec dim depth) = ShapeT [Nat] ((:) Nat dim ([] Nat))

type family VecDim (v :: * -> *) :: Nat Source #

Instances

type VecDim V4 Source # 
type VecDim V4 = 4
type VecDim V3 Source # 
type VecDim V3 = 3
type VecDim V2 Source # 
type VecDim V2 = 2
type VecDim LineSegment Source # 
type VecDim (Vec dim) Source # 
type VecDim (Vec dim) = dim

class IsVec (v :: * -> *) (depth :: *) where Source #

Minimal complete definition

toVec, fromVec

Methods

toVec :: v depth -> Vec (VecDim v) depth Source #

fromVec :: Vec (VecDim v) depth -> v depth Source #

toVecIO :: v depth -> IO (Vec (VecDim v) depth) Source #

Instances

IsVec V4 depth => IsVec LineSegment depth Source # 

Orphan instances

FromPtr Vec2i Source # 

Methods

fromPtr :: IO (Ptr (C Vec2i)) -> IO Vec2i

FromPtr Vec2f Source # 

Methods

fromPtr :: IO (Ptr (C Vec2f)) -> IO Vec2f

FromPtr Vec2d Source # 

Methods

fromPtr :: IO (Ptr (C Vec2d)) -> IO Vec2d

FromPtr Vec3i Source # 

Methods

fromPtr :: IO (Ptr (C Vec3i)) -> IO Vec3i

FromPtr Vec3f Source # 

Methods

fromPtr :: IO (Ptr (C Vec3f)) -> IO Vec3f

FromPtr Vec3d Source # 

Methods

fromPtr :: IO (Ptr (C Vec3d)) -> IO Vec3d

FromPtr Vec4i Source # 

Methods

fromPtr :: IO (Ptr (C Vec4i)) -> IO Vec4i

FromPtr Vec4f Source # 

Methods

fromPtr :: IO (Ptr (C Vec4f)) -> IO Vec4f

FromPtr Vec4d Source # 

Methods

fromPtr :: IO (Ptr (C Vec4d)) -> IO Vec4d

IsVec V4 Int32 Source # 
IsVec V4 CFloat Source # 
IsVec V4 CDouble Source # 
IsVec V3 Int32 Source # 
IsVec V3 CFloat Source # 
IsVec V3 CDouble Source # 
IsVec V2 Int32 Source # 
IsVec V2 CFloat Source # 
IsVec V2 CDouble Source # 
IsVec (Vec 2) Int32 Source # 
IsVec (Vec 2) CFloat Source # 
IsVec (Vec 2) CDouble Source # 
IsVec (Vec 3) Int32 Source # 
IsVec (Vec 3) CFloat Source # 
IsVec (Vec 3) CDouble Source # 
IsVec (Vec 4) Int32 Source # 
IsVec (Vec 4) CFloat Source # 
IsVec (Vec 4) CDouble Source #