#ifndef SSMISU_INCLUDE #define SSMISU_INCLUDE /* Robert Grumbine 2008 -- present */ /* Set up data types/classes as appropriate for the AVHRR instruments on */ /* NOAA-17, 18, and METOP-A */ /* Translate to AMSR-suitable 10 April 2009 */ /* Translate to SSMI-S 15 October 2010 */ /* Frequencies are . 19.35, 22.235, 37, 91.655, 150 GHz */ /* horizontal, then vertical, polarization except 22 and 150 which */ /* are H only */ /* Note that we are ignoring the sounding channels */ typedef struct { float tmbr; /* to 0.01 K, note no channel number or latinfo here. Simpler system */ } ssmisu_spots; typedef struct { short int satid; short int year; unsigned char month, day, hour, minute, second; double clat, clon; ssmisu_spots obs[8]; } ssmisupt; /* Note that these indices refer to the ssmisupt, rather than the */ /* ice spot values I'll be using later */ #define SSMIS_T150H 0 #define SSMIS_T19H 1 #define SSMIS_T19V 2 #define SSMIS_T22V 3 #define SSMIS_T37H 4 #define SSMIS_T37V 5 #define SSMIS_T92V 6 #define SSMIS_T92H 7 /* RG: Look this up -- currently copying ssmi value */ #ifndef SSMIS_MAX_LATITUDE #define SSMIS_MAX_LATITUDE 88.5 #endif #define NSPOTS 1000 /* Structures which relate to bufr decoding */ typedef struct { ssmisupt full[NSPOTS]; } scan_points; extern int process_bufr(ssmisupt *b); extern int check_bufr(ssmisupt *b); extern void zero_bufr(ssmisupt *b); #endif