| Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
|---|---|
| License | LGPL-2.1 |
| Maintainer | Iñaki García Etxebarria (inaki@blueleaf.cc) |
| Safe Haskell | None |
| Language | Haskell2010 |
GI.GstBase.Structs.BitWriter
Contents
Description
BitWriter provides a bit writer that can write any number of
bits into a memory buffer. It provides functions for writing any
number of bits into 8, 16, 32 and 64 bit variables.
Synopsis
- newtype BitWriter = BitWriter (ManagedPtr BitWriter)
- newZeroBitWriter :: MonadIO m => m BitWriter
- noBitWriter :: Maybe BitWriter
- bitWriterAlignBytes :: (HasCallStack, MonadIO m) => BitWriter -> Word8 -> m Bool
- bitWriterFree :: (HasCallStack, MonadIO m) => BitWriter -> m ()
- bitWriterFreeAndGetBuffer :: (HasCallStack, MonadIO m) => BitWriter -> m Buffer
- bitWriterGetData :: (HasCallStack, MonadIO m) => BitWriter -> m Word8
- bitWriterGetRemaining :: (HasCallStack, MonadIO m) => BitWriter -> m Word32
- bitWriterGetSize :: (HasCallStack, MonadIO m) => BitWriter -> m Word32
- bitWriterPutBitsUint16 :: (HasCallStack, MonadIO m) => BitWriter -> Word16 -> Word32 -> m Bool
- bitWriterPutBitsUint32 :: (HasCallStack, MonadIO m) => BitWriter -> Word32 -> Word32 -> m Bool
- bitWriterPutBitsUint64 :: (HasCallStack, MonadIO m) => BitWriter -> Word64 -> Word32 -> m Bool
- bitWriterPutBitsUint8 :: (HasCallStack, MonadIO m) => BitWriter -> Word8 -> Word32 -> m Bool
- bitWriterPutBytes :: (HasCallStack, MonadIO m) => BitWriter -> Word8 -> Word32 -> m Bool
- bitWriterReset :: (HasCallStack, MonadIO m) => BitWriter -> m ()
- bitWriterResetAndGetBuffer :: (HasCallStack, MonadIO m) => BitWriter -> m Buffer
- bitWriterSetPos :: (HasCallStack, MonadIO m) => BitWriter -> Word32 -> m Bool
- getBitWriterBitSize :: MonadIO m => BitWriter -> m Word32
- setBitWriterBitSize :: MonadIO m => BitWriter -> Word32 -> m ()
- getBitWriterData :: MonadIO m => BitWriter -> m Word8
- setBitWriterData :: MonadIO m => BitWriter -> Word8 -> m ()
Exported types
Memory-managed wrapper type.
Constructors
| BitWriter (ManagedPtr BitWriter) |
Instances
| WrappedPtr BitWriter Source # | |
Defined in GI.GstBase.Structs.BitWriter | |
| tag ~ AttrSet => Constructible BitWriter tag Source # | |
Defined in GI.GstBase.Structs.BitWriter | |
newZeroBitWriter :: MonadIO m => m BitWriter Source #
Construct a BitWriter struct initialized to zero.
Methods
alignBytes
Arguments
| :: (HasCallStack, MonadIO m) | |
| => BitWriter |
|
| -> Word8 |
|
| -> m Bool |
Write trailing bit to align last byte of data. trailingBit can
only be 1 or 0.
free
Arguments
| :: (HasCallStack, MonadIO m) | |
| => BitWriter |
|
| -> m () |
Frees bitwriter and the allocated data inside.
freeAndGetBuffer
bitWriterFreeAndGetBuffer Source #
Arguments
| :: (HasCallStack, MonadIO m) | |
| => BitWriter |
|
| -> m Buffer | Returns: a new allocated |
Frees bitwriter without destroying the internal data, which is
returned as Buffer.
Free-function: gst_buffer_unref
getData
Arguments
| :: (HasCallStack, MonadIO m) | |
| => BitWriter |
|
| -> m Word8 | Returns: data pointer |
Get written data pointer
getRemaining
bitWriterGetRemaining :: (HasCallStack, MonadIO m) => BitWriter -> m Word32 Source #
No description available in the introspection data.
getSize
Arguments
| :: (HasCallStack, MonadIO m) | |
| => BitWriter |
|
| -> m Word32 | Returns: size of bits written in |
Get size of written data
putBitsUint16
bitWriterPutBitsUint16 Source #
Arguments
| :: (HasCallStack, MonadIO m) | |
| => BitWriter |
|
| -> Word16 |
|
| -> Word32 |
|
| -> m Bool |
Write nbits bits of value to BitWriter.
putBitsUint32
bitWriterPutBitsUint32 Source #
Arguments
| :: (HasCallStack, MonadIO m) | |
| => BitWriter |
|
| -> Word32 |
|
| -> Word32 |
|
| -> m Bool |
Write nbits bits of value to BitWriter.
putBitsUint64
bitWriterPutBitsUint64 Source #
Arguments
| :: (HasCallStack, MonadIO m) | |
| => BitWriter |
|
| -> Word64 |
|
| -> Word32 |
|
| -> m Bool |
Write nbits bits of value to BitWriter.
putBitsUint8
bitWriterPutBitsUint8 Source #
Arguments
| :: (HasCallStack, MonadIO m) | |
| => BitWriter |
|
| -> Word8 |
|
| -> Word32 |
|
| -> m Bool |
Write nbits bits of value to BitWriter.
putBytes
Arguments
| :: (HasCallStack, MonadIO m) | |
| => BitWriter |
|
| -> Word8 |
|
| -> Word32 |
|
| -> m Bool |
Write nbytes bytes of data to BitWriter.
reset
Arguments
| :: (HasCallStack, MonadIO m) | |
| => BitWriter |
|
| -> m () |
Resets bitwriter and frees the data if it's owned by bitwriter.
resetAndGetBuffer
bitWriterResetAndGetBuffer Source #
Arguments
| :: (HasCallStack, MonadIO m) | |
| => BitWriter |
|
| -> m Buffer | Returns: a new allocated |
Resets bitwriter and returns the current data as Buffer.
Free-function: gst_buffer_unref
setPos
bitWriterSetPos :: (HasCallStack, MonadIO m) => BitWriter -> Word32 -> m Bool Source #
No description available in the introspection data.
Properties
bitSize
Size of written data in bits
getBitWriterBitSize :: MonadIO m => BitWriter -> m Word32 Source #
Get the value of the “bit_size” field.
When overloading is enabled, this is equivalent to
get bitWriter #bitSize
setBitWriterBitSize :: MonadIO m => BitWriter -> Word32 -> m () Source #
Set the value of the “bit_size” field.
When overloading is enabled, this is equivalent to
setbitWriter [ #bitSize:=value ]
data
Allocated data for bit writer to write
getBitWriterData :: MonadIO m => BitWriter -> m Word8 Source #
Get the value of the “data” field.
When overloading is enabled, this is equivalent to
get bitWriter #data
setBitWriterData :: MonadIO m => BitWriter -> Word8 -> m () Source #
Set the value of the “data” field.
When overloading is enabled, this is equivalent to
setbitWriter [ #data:=value ]