.TH "pdstemplates.h" 3 "Tue May 3 2022" "Version 1.6.4" "NCEPLIBS-g2c" \" -*- nroff -*- .ad l .nh .SH NAME pdstemplates.h \- This inculde file contains info on all the available GRIB2 Product Definition Templates used in Section 4 (PDS)\&. .SH SYNOPSIS .br .PP \fC#include 'grib2\&.h'\fP .br .SS "Data Structures" .in +1c .ti -1c .RI "struct \fBpdstemplate\fP" .br .RI "Struct for PDS template\&. " .in -1c .SS "Macros" .in +1c .ti -1c .RI "#define \fBMAXPDSMAPLEN\fP 200" .br .RI "maximum template map length " .ti -1c .RI "#define \fBMAXPDSTEMP\fP 47" .br .RI "maximum number of templates " .in -1c .SS "Variables" .in +1c .ti -1c .RI "const struct \fBpdstemplate\fP \fBtemplatespds\fP [\fBMAXPDSTEMP\fP]" .br .RI "Date for struct for PDS template\&. " .in -1c .SH "Detailed Description" .PP This inculde file contains info on all the available GRIB2 Product Definition Templates used in Section 4 (PDS)\&. The information decribing each template is stored in the pdstemplate structure defined below\&. .PP Each Template has three parts: The number of entries in the template (mappdslen); A map of the template (mappds), which contains the number of octets in which to pack each of the template values; and a logical value (needext) that indicates whether the Template needs to be extended\&. In some cases the number of entries in a template can vary depending upon values specified in the 'static' part of the template\&. ( See Template 4\&.3 as an example ) .PP \fBNote\fP .RS 4 Array mappds contains the number of octets in which the corresponding template values will be stored\&. A negative value in mappds is used to indicate that the corresponding template entry can contain negative values\&. This information is used later when packing (or unpacking) the template data values\&. Negative data values in GRIB are stored with the left most bit set to one, and a negative number of octets value in mappds[] indicates that this possibility should be considered\&. The number of octets used to store the data value in this case would be the absolute value of the negative value in mappds[]\&. .RE .PP PROGRAM HISTORY LOG: .IP "\(bu" 2 2005-12-08 Gilbert Allow negative scale factors and limits for Templates 4\&.5 and 4\&.9 .IP "\(bu" 2 2009-12-15 Vuong Added Product Definition Template 4\&.31 Added Product Definition Template 4\&.15 .IP "\(bu" 2 2010-08-03 Vuong Added Product Definition Template 4\&.40,4\&.41,4\&.42,4\&.43 .IP "\(bu" 2 2010-12-08 Vuong Corrected Definition Template 4\&.42,4\&.43 .IP "\(bu" 2 2010-12-08 Vuong Corrected Definition Template 4\&.42,4\&.43 .IP "\(bu" 2 2012-03-29 Vuong Added Templates 4\&.44,4\&.45,4\&.46,4\&.47,4\&.48,4\&.50, 4\&.51,4\&.91,4\&.32 and 4\&.52 .IP "\(bu" 2 2013-08-05 Vuong Corrected 4\&.91 and added Templates 4\&.33,4\&.34,4\&.53,4\&.54 .IP "\(bu" 2 2015-10-07 Vuong Added Templates 4\&.57, 4\&.60, 4\&.61 and allow a forecast time to be negative .PP .PP \fBAuthor\fP .RS 4 Stephen Gilbert .RE .PP \fBDate\fP .RS 4 2005-12-08 .RE .PP .PP Definition in file \fBpdstemplates\&.h\fP\&. .SH "Data Type Documentation" .PP .SH "struct pdstemplate" .PP Struct for PDS template\&. .PP Definition at line 55 of file pdstemplates\&.h\&. .PP \fBData Fields:\fP .RS 4 \fBg2int\fP \fImappds[\fBMAXPDSMAPLEN\fP]\fP .br .PP \fBg2int\fP \fImappdslen\fP .br .PP \fBg2int\fP \fIneedext\fP .br .PP \fBg2int\fP \fItemplate_num\fP .br .PP .RE .PP .SH "Macro Definition Documentation" .PP .SS "#define MAXPDSMAPLEN 200" .PP maximum template map length .PP Definition at line 50 of file pdstemplates\&.h\&. .SS "#define MAXPDSTEMP 47" .PP maximum number of templates .PP Definition at line 49 of file pdstemplates\&.h\&. .SH "Variable Documentation" .PP .SS "const struct \fBpdstemplate\fP templatespds[\fBMAXPDSTEMP\fP]" .PP Date for struct for PDS template\&. .PP Definition at line 1 of file pdstemplates\&.h\&. .PP Referenced by getpdsindex(), and getpdstemplate()\&. .SH "Author" .PP Generated automatically by Doxygen for NCEPLIBS-g2c from the source code\&.