s2-tools
Version:
A collection of geospatial tools primarily designed for WGS84, Web Mercator, and S2.
329 lines • 13 kB
TypeScript
import type { Grib2Sections } from '..';
import type { Reader } from '../../..';
/** The output of `getGrib2Template4` */
export type Grib2ProductDefinition = ReturnType<typeof getGrib2Template4>;
/**
* Returns a template generator for the given template number
* @param template - the template number to generate
* @param reader - the byte data to read
* @param sections - the sections of the GRIB2 message that have been parsed so far
* @returns - generated template data
*/
export declare function getGrib2Template4(template: number, reader: Reader, sections: Grib2Sections): {
/** Paramater */
paramater: {
parameter: string;
units: string;
abbrev: string;
category: string;
};
/** Parameter category (see Code [Table 4.1](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-1.shtml)) */
parameterCategory: number;
/** Parameter number (see Code [Table 4.2](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-2.shtml)) */
parameterNumber: number;
/** Type of generating process (see Code [Table 4.3](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-3.shtml)) */
genProcessType: {
code: number;
value: string;
};
/** Background generating process identifier (defined by originating centre) */
backgroundGenProcess: number;
/** Analysis or forecast generating process identifier (see Code [ON388 Table A](https://www.nco.ncep.noaa.gov/pmb/docs/on388/tablea.html)) */
forecastGenProcess: {
code: number;
value: string;
};
/** Hours after reference time data cutoff (see Notes) */
hoursAfterRefTime: number;
/** Minutes after reference time data cutoff (see Notes) */
minAfterRefTime: number;
/** Indicator of unit of time range (see Code [Table 4.4](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-4.shtml)) */
unitOfTimeRangeIndicator: {
code: number;
value: string;
};
/** Forecast time in units defined by octet 18 */
forecastTime: {
code: number;
value: Date;
};
/** First fixed surface */
surface1: {
scale: number;
value: number;
type: string;
unit: string;
};
/** Type of first fixed surface (see Code [Table 4.5](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-5.shtml)) */
surface1Type: number;
/** Scale factor of first fixed surface */
surface1Scale: number;
/** Scaled value of first fixed surface */
surface1Value: number;
/** Second fixed surface */
surface2: {
scale: number;
value: number;
type: string;
unit: string;
};
/** Type of second fixed surface (see Code [Table 4.5](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-5.shtml)) */
surface2Type: number;
/** Scale factor of second fixed surface */
surface2Scale: number;
/** Scaled value of second fixed surface */
surface2Value: number;
};
/**
* PRODUCT DEFINITION TEMPLATE 4.0
*
* Analysis or forecast at a horizontal level or in
* a horizontal layer at a point in time.
*
* [Read more...](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_temp4-0.shtml)
* @param section - the byte data to read
* @param sections - the sections of the GRIB2 message that have been parsed so far
* @returns - the parsed template
*/
export declare function grib2Template40(section: Reader, sections: Grib2Sections): {
/** Paramater */
paramater: {
parameter: string;
units: string;
abbrev: string;
category: string;
};
/** Parameter category (see Code [Table 4.1](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-1.shtml)) */
parameterCategory: number;
/** Parameter number (see Code [Table 4.2](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-2.shtml)) */
parameterNumber: number;
/** Type of generating process (see Code [Table 4.3](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-3.shtml)) */
genProcessType: {
code: number;
value: string;
};
/** Background generating process identifier (defined by originating centre) */
backgroundGenProcess: number;
/** Analysis or forecast generating process identifier (see Code [ON388 Table A](https://www.nco.ncep.noaa.gov/pmb/docs/on388/tablea.html)) */
forecastGenProcess: {
code: number;
value: string;
};
/** Hours after reference time data cutoff (see Notes) */
hoursAfterRefTime: number;
/** Minutes after reference time data cutoff (see Notes) */
minAfterRefTime: number;
/** Indicator of unit of time range (see Code [Table 4.4](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-4.shtml)) */
unitOfTimeRangeIndicator: {
code: number;
value: string;
};
/** Forecast time in units defined by octet 18 */
forecastTime: {
code: number;
value: Date;
};
/** First fixed surface */
surface1: {
scale: number;
value: number;
type: string;
unit: string;
};
/** Type of first fixed surface (see Code [Table 4.5](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-5.shtml)) */
surface1Type: number;
/** Scale factor of first fixed surface */
surface1Scale: number;
/** Scaled value of first fixed surface */
surface1Value: number;
/** Second fixed surface */
surface2: {
scale: number;
value: number;
type: string;
unit: string;
};
/** Type of second fixed surface (see Code [Table 4.5](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-5.shtml)) */
surface2Type: number;
/** Scale factor of second fixed surface */
surface2Scale: number;
/** Scaled value of second fixed surface */
surface2Value: number;
};
/**
* PRODUCT DEFINITION TEMPLATE 4.1
*
* Individual ensemble forecast, control and perturbed, at a horizontal
* level or in a horizontal layer at a point in time.
*
* [Read more...](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_temp4-1.shtml)
* @param section - the byte data to read
* @param sections - the sections of the GRIB2 message that have been parsed so far
* @returns - the parsed template
*/
export declare function grib2Template41(section: Reader, sections: Grib2Sections): {
/** Paramater */
paramater: {
parameter: string;
units: string;
abbrev: string;
category: string;
};
/** Parameter category (see Code [Table 4.1](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-1.shtml)) */
parameterCategory: number;
/** Parameter number (see Code [Table 4.2](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-2.shtml)) */
parameterNumber: number;
/** Type of generating process (see Code [Table 4.3](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-3.shtml)) */
genProcessType: {
code: number;
value: string;
};
/** Background generating process identifier (defined by originating centre) */
backgroundGenProcess: number;
/** Forecast generating process identifier (see Code [ON388 Table A](https://www.nco.ncep.noaa.gov/pmb/docs/on388/tablea.html)) */
forecastGenProcess: {
code: number;
value: string;
};
/** Hours after reference time data cutoff (see Notes) */
hoursAfterRefTime: number;
/** Minutes after reference time data cutoff (see Notes) */
minAfterRefTime: number;
/** Indicator of unit of time range (see Code [Table 4.4](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-4.shtml)) */
unitOfTimeRangeIndicator: {
code: number;
value: string;
};
/** Forecast time in units defined by octet 18 */
forecastTime: {
code: number;
value: Date;
};
/** First fixed surface */
surface1: {
scale: number;
value: number;
type: string;
unit: string;
};
/** Type of first fixed surface (see Code [Table 4.5](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-5.shtml), result stored in `surface1`) */
surface1Type: number;
/** Scale factor of first fixed surface */
surface1Scale: number;
/** Scaled value of first fixed surface */
surface1Value: number;
/** Second fixed surface */
surface2: {
scale: number;
value: number;
type: string;
unit: string;
};
/** Type of second fixed surface (see Code [Table 4.5](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-5.shtml) result stored in `surface2`) */
surface2Type: number;
/** Scale factor of second fixed surface */
surface2Scale: number;
/** Scaled value of second fixed surface */
surface2Value: number;
/** Type of ensemble forecast (see Code [Table 4.6](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-6.shtml)) */
ensembleForecastType: {
code: number;
value: string;
};
/** Perturbation number */
perturbationNumber: number;
/** Number of forecasts in ensemble */
numForecastsInEnsemble: number;
};
/**
* PRODUCT DEFINITION TEMPLATE 4.2
*
* Derived forecast, based on all ensemble members at a horizontal
* level or in a horizontal layer at a point in time.
*
* [Read more...](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_temp4-2.shtml)
* @param section - the byte data to read
* @param sections - the sections of the GRIB2 message that have been parsed so far
* @returns - the parsed template
*/
export declare function grib2Template42(section: Reader, sections: Grib2Sections): {
/** Paramater */
paramater: {
parameter: string;
units: string;
abbrev: string;
category: string;
};
/** Parameter category (see Code [Table 4.1](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-1.shtml)) */
parameterCategory: number;
/** Parameter number (see Code [Table 4.2](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-2.shtml)) */
parameterNumber: number;
/** Type of generating process (see Code [Table 4.3](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-3.shtml)) */
genProcessType: {
code: number;
value: string;
};
/** Background generating process identifier (defined by originating centre) */
backgroundGenProcess: number;
/** Forecast generating process identifier (see Code [ON388 Table A](https://www.nco.ncep.noaa.gov/pmb/docs/on388/tablea.html)) */
forecastGenProcess: {
code: number;
value: string;
};
/** Hours after reference time data cutoff (see Notes) */
hoursAfterRefTime: number;
/** Minutes after reference time data cutoff */
minAfterRefTime: number;
/** Indicator of unit of time range (see Code [Table 4.4](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-4.shtml)) */
unitOfTimeRangeIndicator: {
code: number;
value: string;
};
/** Forecast time in units defined by octet 18 */
forecastTime: {
code: number;
value: Date;
};
/** First fixed surface */
surface1: {
scale: number;
value: number;
type: string;
unit: string;
};
/** Type of first fixed surface (see Code [Table 4.5](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-5.shtml)) */
surface1Type: number;
/** Scale factor of first fixed surface */
surface1Scale: number;
/** Scaled value of first fixed surface */
surface1Value: number;
/** Second fixed surface */
surface2: {
scale: number;
value: number;
type: string;
unit: string;
};
/** Type of second fixed surface (see Code [Table 4.5](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-5.shtml)) */
surface2Type: number;
/** Scale factor of second fixed surface */
surface2Scale: number;
/** Scaled value of second fixed surface */
surface2Value: number;
/** Derived forecast type (see Code [Table 4.7](https://www.nco.ncep.noaa.gov/pmb/docs/grib2/grib2_doc/grib2_table4-7.shtml)) */
derivedForecastType: {
code: number;
value: string;
};
/** Number of forecasts in the ensemble */
numForecastsInEnsemble: number;
};
/**
* Calculate Forecast Time
* @param refTime Reference time of GRIB Packet
* @param offset Number of units to offset the ref time by
* @param unitOfTime unit of time of offset
* @returns - the forecast time
*/
export declare function calculateForecastTime(refTime: Date, offset: number, unitOfTime: string): Date;
//# sourceMappingURL=templates.d.ts.map