| Copyright | Will Thompson and Iñaki García Etxebarria |
|---|---|
| License | LGPL-2.1 |
| Maintainer | Iñaki García Etxebarria |
| Safe Haskell | Safe-Inferred |
| Language | Haskell2010 |
GI.GstBase.Structs.BitWriter
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.
Since: 1.16
Synopsis
- newtype BitWriter = BitWriter (ManagedPtr BitWriter)
- newZeroBitWriter :: MonadIO m => m BitWriter
- bitWriterAlignBytes :: (HasCallStack, MonadIO m) => BitWriter -> Word8 -> m Bool
- bitWriterFree :: (HasCallStack, MonadIO m) => BitWriter -> m ()
- bitWriterFreeAndGetBuffer :: (HasCallStack, MonadIO m) => BitWriter -> m Buffer
- 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 -> Ptr 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.
Instances
| Eq BitWriter Source # | |
| BoxedPtr BitWriter Source # | |
Defined in GI.GstBase.Structs.BitWriter | |
| CallocPtr BitWriter Source # | |
Defined in GI.GstBase.Structs.BitWriter Methods boxedPtrCalloc :: IO (Ptr BitWriter) | |
| ManagedPtrNewtype BitWriter Source # | |
Defined in GI.GstBase.Structs.BitWriter Methods toManagedPtr :: BitWriter -> ManagedPtr BitWriter | |
| tag ~ 'AttrSet => Constructible BitWriter tag Source # | |
newZeroBitWriter :: MonadIO m => m BitWriter Source #
Construct a BitWriter struct initialized to zero.
Methods
Click to display all available methods, including inherited ones
Methods
alignBytes, free, freeAndGetBuffer, putBitsUint16, putBitsUint32, putBitsUint64, putBitsUint8, putBytes, reset, resetAndGetBuffer.
Getters
Setters
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
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 |
|
| -> Ptr 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 ]