OB.DAAC Logo
NASA Logo
Ocean Color Science Software

ocssw V2022
l1bgen_oci.cpp File Reference
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
#include <unistd.h>
#include <sstream>
#include <fstream>
#include <iomanip>
#include <getopt.h>
#include <libgen.h>
#include "nc4utils.h"
#include "l1bgen_oci.h"
Include dependency graph for l1bgen_oci.cpp:

Go to the source code of this file.

Macros

#define VERSION   "0.045"
 

Functions

int main (int argc, char *argv[])
 
int read_mce_tlm (NcFile *l1afile, NcGroup egid, uint32_t nscan, uint32_t nenc, int32_t &ppr_off, double &revpsec, double &secpline, int32_t *mspin, int32_t *ot_10us, uint8_t *enc_count, float **hamenc, float **rtaenc)
 
int get_ev (double secpline, int16_t *dtype, int16_t *lines, int16_t *iagg, uint16_t &pcdim, uint16_t &psdim, double &ev_toff, float *clines, float *slines, double *deltc, double *delts, int16_t &iret)
 
int get_agg_mat (size_t *ia, int16_t iagg, int16_t jagg[16], uint16_t nib, uint32_t &nbb, uint32_t ntb[16], float **amat, float **gmat)
 
int read_oci_cal_lut (NcFile *calLUTfile, string tag, NcGroup gidLUT, uint32_t &banddim, cal_lut_struct &cal_lut)
 
int make_oci_gains (uint32_t nib, uint32_t banddim, uint16_t iyr, uint16_t idom, double stime, double K2t[NTIMES], cal_lut_struct &cal_lut, float **gmat, gains_struct &gains)
 
int get_oci_vecs (uint32_t nscan, uint16_t pdim, geo_struct &geoLUT, double ev_toff, int32_t spin, float *slines, double *delt, double revpsec, int32_t ppr_off, int32_t *mspin, int32_t *ot_10us, uint8_t *enc_count, float **hamenc, float **rtaenc, float **pview, double *theta, int16_t &iret)
 
template<typename T >
int get_oci_dark (size_t iscn, uint32_t nscan, uint8_t *hside, uint16_t ndsc, uint16_t nskp, int16_t iags, int16_t iagd, uint32_t ntaps, int16_t *jagg, uint32_t dfill, int16_t ndc, T ***dark, uint32_t nib, float *dc, int16_t &iret)
 
int get_oci_temp_corr (uint32_t nib, gains_struct gains, float K3T[NTEMPS], float *caltemps, uint32_t nscan, float *k3)
 
int get_oci_rvs_corr (uint32_t nib, uint16_t pdim, uint8_t hside, gains_struct gains, double *theta, float **k4)
 
int get_oci_lin_corr (uint32_t nib, uint16_t pdim, gains_struct gains, float K3T[NTEMPS], float *caltemps, float **dn, float **k5)
 
int createField (NcGroup &ncGrp, const char *sname, const char *lname, const char *standard_name, const char *units, void *fill_value, const char *flag_values, const char *flag_meanings, double low, double high, int nt, vector< NcDim > &varVec)
 
template<typename T >
T *** make3dT (size_t dims[3])
 

Variables

ofstream tempOut
 

Macro Definition Documentation

◆ VERSION

#define VERSION   "0.045"

Definition at line 20 of file l1bgen_oci.cpp.

Function Documentation

◆ createField()

int createField ( NcGroup &  ncGrp,
const char *  sname,
const char *  lname,
const char *  standard_name,
const char *  units,
void *  fill_value,
const char *  flag_values,
const char *  flag_meanings,
double  low,
double  high,
int  nt,
vector< NcDim > &  varVec 
)

Definition at line 2178 of file l1bgen_oci.cpp.

◆ get_agg_mat()

int get_agg_mat ( size_t *  ia,
int16_t  iagg,
int16_t  jagg[16],
uint16_t  nib,
uint32_t &  nbb,
uint32_t  ntb[16],
float **  amat,
float **  gmat 
)

Definition at line 1312 of file l1bgen_oci.cpp.

◆ get_ev()

int get_ev ( double  secpline,
int16_t *  dtype,
int16_t *  lines,
int16_t *  iagg,
uint16_t &  pcdim,
uint16_t &  psdim,
double &  ev_toff,
float *  clines,
float *  slines,
double *  deltc,
double *  delts,
int16_t &  iret 
)

Definition at line 1263 of file l1bgen_oci.cpp.

◆ get_oci_dark()

int get_oci_dark ( size_t  iscn,
uint32_t  nscan,
uint8_t *  hside,
uint16_t  ndsc,
uint16_t  nskp,
int16_t  iags,
int16_t  iagd,
uint32_t  ntaps,
int16_t *  jagg,
uint32_t  dfill,
int16_t  ndc,
T ***  dark,
uint32_t  nib,
float *  dc,
int16_t &  iret 
)

Definition at line 1661 of file l1bgen_oci.cpp.

◆ get_oci_lin_corr()

int get_oci_lin_corr ( uint32_t  nib,
uint16_t  pdim,
gains_struct  gains,
float  K3T[NTEMPS],
float *  caltemps,
float **  dn,
float **  k5 
)

Definition at line 1817 of file l1bgen_oci.cpp.

◆ get_oci_rvs_corr()

int get_oci_rvs_corr ( uint32_t  nib,
uint16_t  pdim,
uint8_t  hside,
gains_struct  gains,
double *  theta,
float **  k4 
)

Definition at line 1798 of file l1bgen_oci.cpp.

◆ get_oci_temp_corr()

int get_oci_temp_corr ( uint32_t  nib,
gains_struct  gains,
float  K3T[NTEMPS],
float *  caltemps,
uint32_t  nscan,
float *  k3 
)

Definition at line 1778 of file l1bgen_oci.cpp.

◆ get_oci_vecs()

int get_oci_vecs ( uint32_t  nscan,
uint16_t  pdim,
geo_struct geoLUT,
double  ev_toff,
int32_t  spin,
float *  slines,
double *  delt,
double  revpsec,
int32_t  ppr_off,
int32_t *  mspin,
int32_t *  ot_10us,
uint8_t *  enc_count,
float **  hamenc,
float **  rtaenc,
float **  pview,
double *  theta,
int16_t &  iret 
)

Definition at line 1578 of file l1bgen_oci.cpp.

◆ main()

int main ( int  argc,
char *  argv[] 
)

An implementation of a Lon/Lat to UTM zone code written by Chuck Gantz chuck.nosp@m..gan.nosp@m.tz@gl.nosp@m.obal.nosp@m.star..nosp@m.com ...in 1998...found on http://www.gpsy.com/gpsinfo/geotoutm/, a site published by Karen Nakamura, last updated 22 June 2000.

Minor modifications to the code were made to eliminate deprecation warnings

Definition at line 36 of file l1bgen_oci.cpp.

◆ make3dT()

T*** make3dT ( size_t  dims[3])

Definition at line 2652 of file l1bgen_oci.cpp.

◆ make_oci_gains()

int make_oci_gains ( uint32_t  nib,
uint32_t  banddim,
uint16_t  iyr,
uint16_t  idom,
double  stime,
double  K2t[NTIMES],
cal_lut_struct cal_lut,
float **  gmat,
gains_struct gains 
)

Definition at line 1478 of file l1bgen_oci.cpp.

◆ read_mce_tlm()

int read_mce_tlm ( NcFile *  l1afile,
NcGroup  egid,
uint32_t  nscan,
uint32_t  nenc,
int32_t &  ppr_off,
double &  revpsec,
double &  secpline,
int32_t *  mspin,
int32_t *  ot_10us,
uint8_t *  enc_count,
float **  hamenc,
float **  rtaenc 
)

Definition at line 1149 of file l1bgen_oci.cpp.

◆ read_oci_cal_lut()

int read_oci_cal_lut ( NcFile *  calLUTfile,
string  tag,
NcGroup  gidLUT,
uint32_t &  banddim,
cal_lut_struct cal_lut 
)

Definition at line 1409 of file l1bgen_oci.cpp.

Variable Documentation

◆ tempOut

ofstream tempOut

Definition at line 34 of file l1bgen_oci.cpp.