NCEPLIBS-g2c  1.7.0
gbits.c File Reference

Functions to pack and unpack bits to/from a packed bit string. More...

#include "grib2_int.h"

Go to the source code of this file.

Functions

void gbit (unsigned char *in, g2int *iout, g2int iskip, g2int nbits)
 Get bits - unpack bits: Extract arbitrary size values from a packed bit string, right justifying each value in the unpacked iout array. More...
 
void gbits (unsigned char *in, g2int *iout, g2int iskip, g2int nbits, g2int nskip, g2int n)
 Get bits - unpack bits: Extract arbitrary size values from a packed bit string, right justifying each value in the unpacked iout array. More...
 
void sbit (unsigned char *out, g2int *in, g2int iskip, g2int nbits)
 Store bits - put arbitrary size values into a packed bit string, taking the low order bits from each value in the unpacked array. More...
 
void sbits (unsigned char *out, g2int *in, g2int iskip, g2int nbits, g2int nskip, g2int n)
 Store bits - put arbitrary size values into a packed bit string, taking the low order bits from each value in the unpacked array. More...
 

Detailed Description

Functions to pack and unpack bits to/from a packed bit string.

Author
NOAA Programmer

Definition in file gbits.c.

Function Documentation

◆ gbit()

void gbit ( unsigned char *  in,
g2int iout,
g2int  iskip,
g2int  nbits 
)

Get bits - unpack bits: Extract arbitrary size values from a packed bit string, right justifying each value in the unpacked iout array.

Parameters
inpointer to character array input.
ioutpointer to unpacked array output.
iskipinitial number of bits to skip.
nbitsnumber of bits to take.
Author
NOAA Programmer

Definition at line 20 of file gbits.c.

References gbits().

Referenced by comunpack(), g2_addfield(), g2_addgrid(), g2_addlocal(), g2_getfld(), g2_gribend(), g2_info(), g2_unpack1(), g2_unpack2(), g2_unpack3(), g2_unpack4(), g2_unpack5(), g2_unpack6(), g2_unpack7(), g2c_check_msg(), and seekgb().

◆ gbits()

void gbits ( unsigned char *  in,
g2int iout,
g2int  iskip,
g2int  nbits,
g2int  nskip,
g2int  n 
)

Get bits - unpack bits: Extract arbitrary size values from a packed bit string, right justifying each value in the unpacked iout array.

Parameters
inPointer to character array input.
ioutPointer to unpacked array output.
iskipInitial number of bits to skip.
nbitsNumber of bits to take.
nskipAdditional number of bits to skip on each iteration.
nNumber of iterations.
Author
NOAA Programmer

Definition at line 57 of file gbits.c.

Referenced by comunpack(), g2_unpack3(), g2_unpack4(), g2_unpack6(), gbit(), pngunpack_int(), simunpack(), and specunpack().

◆ sbit()

void sbit ( unsigned char *  out,
g2int in,
g2int  iskip,
g2int  nbits 
)

Store bits - put arbitrary size values into a packed bit string, taking the low order bits from each value in the unpacked array.

Parameters
outPointer to packed array output. Must be allocated large enough to hold output.
inPointer to unpacked array input.
iskipInitial number of bits to skip.
nbitsNumber of bits to pack.
Author
NOAA Programmer

Definition at line 38 of file gbits.c.

References sbits().

Referenced by compack(), g2_addfield(), g2_addgrid(), g2_addlocal(), g2_create(), g2_gribend(), misspack(), and simpack().

◆ sbits()

void sbits ( unsigned char *  out,
g2int in,
g2int  iskip,
g2int  nbits,
g2int  nskip,
g2int  n 
)

Store bits - put arbitrary size values into a packed bit string, taking the low order bits from each value in the unpacked array.

Parameters
outPointer to packed array output. Must be allocated large enough to hold output.
inPointer to unpacked array input.
iskipInitial number of bits to skip.
nbitsNumber of bits to pack.
nskipAdditional number of bits to skip on each iteration.
nNumber of iterations.
Author
NOAA Programmer

Definition at line 114 of file gbits.c.

Referenced by compack(), g2_addfield(), g2_addgrid(), jpcpack_int(), misspack(), pngpack_int(), sbit(), and simpack().