NCEPLIBS-g2c  1.6.4
g2_gribend.c File Reference

Finalize a GRIB2 message after all grids and fields have been added. More...

#include <stdio.h>
#include "grib2.h"

Go to the source code of this file.

Functions

g2int g2_gribend (unsigned char *cgrib)
 This routine finalizes a GRIB2 message after all grids and fields have been added. More...
 

Detailed Description

Finalize a GRIB2 message after all grids and fields have been added.

Author
Stephen Gilbert
Date
2002-10-31

Definition in file g2_gribend.c.

Function Documentation

◆ g2_gribend()

g2int g2_gribend ( unsigned char *  cgrib)

This routine finalizes a GRIB2 message after all grids and fields have been added.

It adds the End Section ("7777") to the end of the GRIB message and calculates the length and stores it in the appropriate place in Section 0. This routine is used with routines g2_create(), g2_addlocal(), g2_addgrid(), and g2_addfield() to create a complete GRIB2 message.

Parameters
cgribChar array containing all the data sections added be previous calls to g2_create(), g2_addlocal(), g2_addgrid(), and g2_addfield(). After function is called, contains the finalized GRIB2 message.
Returns
  • > 0 Length of the final GRIB2 message in bytes.
  • -1 GRIB message was not initialized. Need to call routine g2_create first.
  • -2 GRIB message already complete.
  • -3 Sum of Section byte counts doesn't add to total byte count
  • -4 Previous Section was not 7.
Note
This routine is intended for use with routines g2_create(), g2_addlocal(), g2_addgrid(), and g2_addfield() to create a complete GRIB2 message.
Author
Stephen Gilbert
Date
2002-10-31

Definition at line 35 of file g2_gribend.c.

References gbit(), and sbit().