ffmpeg-light-0.13.0: Minimal bindings to the FFmpeg library.
Safe HaskellSafe
LanguageHaskell2010

Codec.FFmpeg.Internal.Linear

Description

Minimal operations on small vector types.

Synopsis

Documentation

data V2 a Source #

A two-component vector

Constructors

V2 !a !a 

Instances

Instances details
SwsCompatible (AVPixelFormat, V2 CInt, Vector CUChar) Source # 
Instance details

Defined in Codec.FFmpeg.Scaler

Methods

swsPlanes :: (AVPixelFormat, V2 CInt, Vector CUChar) -> (Ptr (Ptr CUChar) -> IO r) -> IO r Source #

swsStrides :: (AVPixelFormat, V2 CInt, Vector CUChar) -> (Ptr CInt -> IO r) -> IO r Source #

sliceHeight :: (AVPixelFormat, V2 CInt, Vector CUChar) -> (CInt -> IO r) -> IO r Source #

data V3 a Source #

A three-component vector

Constructors

V3 !a !a !a 

Instances

Instances details
Functor V3 Source # 
Instance details

Defined in Codec.FFmpeg.Internal.Linear

Methods

fmap :: (a -> b) -> V3 a -> V3 b #

(<$) :: a -> V3 b -> V3 a #

Storable a => Storable (V3 a) Source # 
Instance details

Defined in Codec.FFmpeg.Internal.Linear

Methods

sizeOf :: V3 a -> Int #

alignment :: V3 a -> Int #

peekElemOff :: Ptr (V3 a) -> Int -> IO (V3 a) #

pokeElemOff :: Ptr (V3 a) -> Int -> V3 a -> IO () #

peekByteOff :: Ptr b -> Int -> IO (V3 a) #

pokeByteOff :: Ptr b -> Int -> V3 a -> IO () #

peek :: Ptr (V3 a) -> IO (V3 a) #

poke :: Ptr (V3 a) -> V3 a -> IO () #

qd :: V3 CInt -> V3 CInt -> CInt Source #

Quadrance between two 3D points.

data V4 a Source #

A four-component vector

Constructors

V4 !a !a !a !a 

Instances

Instances details
Functor V4 Source # 
Instance details

Defined in Codec.FFmpeg.Internal.Linear

Methods

fmap :: (a -> b) -> V4 a -> V4 b #

(<$) :: a -> V4 b -> V4 a #

Storable a => Storable (V4 a) Source # 
Instance details

Defined in Codec.FFmpeg.Internal.Linear

Methods

sizeOf :: V4 a -> Int #

alignment :: V4 a -> Int #

peekElemOff :: Ptr (V4 a) -> Int -> IO (V4 a) #

pokeElemOff :: Ptr (V4 a) -> Int -> V4 a -> IO () #

peekByteOff :: Ptr b -> Int -> IO (V4 a) #

pokeByteOff :: Ptr b -> Int -> V4 a -> IO () #

peek :: Ptr (V4 a) -> IO (V4 a) #

poke :: Ptr (V4 a) -> V4 a -> IO () #