Scroll to navigation

gbits.c(3) Library Functions Manual gbits.c(3)

NAME

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

SYNOPSIS

#include 'grib2_int.h'

Functions


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

Detailed Description

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

Author

NOAA Programmer

Definition in file gbits.c.

Function Documentation

void g2c_gbit_int (unsigned char * in, int * iout, int iskip, int nbits)

Extract arbitrary size values from a packed bit string, right justifying each value in the unpacked iout array. This is similar to gbit(), but with int types instead of g2int.

Parameters

in pointer to character array input.
iout pointer that gets the unpacked array output.
iskip initial number of bits to skip.
nbits number of bits to take.

Author

NOAA Programmer

Definition at line 113 of file gbits.c.

References g2c_gbits_int().

int g2c_gbits_int (unsigned char * in, int * iout, int iskip, int nbits, int nskip, int n)

Extract arbitrary size values from a packed bit string, right justifying each value in the unpacked iout array. This is similar to gbits(), but with int types instead of g2int.

Parameters

in Pointer to character array input.
iout Pointer that gets the unpacked array output.
iskip Initial number of bits to skip.
nbits Number of bits to take.
nskip Additional number of bits to skip on each iteration.
n Number of iterations.

Returns

  • G2C_NOERROR No error.
  • G2C_ENOMEM Out of memory.

Author

Ed Hartnett

Date

8/31/22

Definition at line 137 of file gbits.c.

References G2C_EINVAL, G2C_ENOMEM, G2C_NOERROR, and gbits().

Referenced by g2c_gbit_int().

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

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

Parameters

in pointer to character array input.
iout pointer that gets the unpacked array output.
iskip initial number of bits to skip.
nbits number 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(), g2c_check_msg(), g2c_unpack7_int(), and seekgb().

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

Unpack arbitrary size values from a packed bit string, right justifying each value in the unpacked iout array.

Parameters

in Pointer to character array input.
iout Pointer that gets the unpacked array output.
iskip Initial number of bits to skip.
nbits Number of bits to take.
nskip Additional number of bits to skip on each iteration.
n Number of iterations.

Author

NOAA Programmer

Definition at line 57 of file gbits.c.

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

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

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

Parameters

out Pointer to packed array output. Must be allocated large enough to hold output.
in Pointer that gets the unpacked array input.
iskip Initial number of bits to skip.
nbits Number 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().

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

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

Parameters

out Pointer to packed array output. Must be allocated large enough to hold output.
in Pointer that gets the unpacked array input.
iskip Initial number of bits to skip.
nbits Number of bits to pack.
nskip Additional number of bits to skip on each iteration.
n Number of iterations.

Author

NOAA Programmer

Definition at line 178 of file gbits.c.

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

Author

Generated automatically by Doxygen for NCEPLIBS-g2c from the source code.

Version 2.1.0 NCEPLIBS-g2c