OB.DAAC Logo
NASA Logo
Ocean Color Science Software

ocssw V2022

#include <hdf_bin.h>

Inheritance diagram for hdf_bin:
[legend]
Collaboration diagram for hdf_bin:
[legend]

Public Member Functions

 hdf_bin ()
 
virtual ~hdf_bin ()
 
virtual int query ()
 
virtual int query (char *product_list)
 
virtual int query (char ***prod_array)
 
virtual int get_prodname (int iprod, char *prodname)
 
virtual void setProductList (int numProducts, char *prodNames[])
 
virtual const char * getProdName (int prodNum) const
 
virtual int getProdIndex (const char *prodname) const
 
virtual const char * getActiveProdName (int prodNum) const
 
virtual int read (char *product_list)
 
virtual int64_t get_beg ()=0
 
virtual int get_ext ()=0
 
virtual int open (const char *l3b_filename)=0
 
virtual int create (const char *l3b_filename, int32_t nrows)=0
 
virtual int readBinIndex (int row_num_to_read)=0
 
virtual int readBinList (int nbins_to_read)=0
 
virtual int readBinList (int nbins_to_read, int32_t list_reset_ptr)=0
 
virtual int readBinList ()=0
 
virtual int writeBinList (int32_t nbins_to_write)=0
 
virtual int readQual (uint8_t *qual, int32_t nbins_to_read)=0
 
virtual int readQual (uint8_t *qual, int32_t nbins_to_read, int32_t row_num_to_read)=0
 
virtual int readSums (float *sums, int32_t nbins_to_read, int iprod)=0
 
virtual int readSums (float *sums, int32_t *listOfBins, int32_t nbins_to_read, int iprod)=0
 
virtual int writeQual (uint8_t *qual, int32_t nbins_to_write)=0
 
virtual int writeSums (float *sums, int32_t nbins_to_write, const char *prodname)=0
 
virtual int64_t get_numbin (int irow)
 
virtual int64_t get_basebin (int irow)
 
virtual void bin2latlon (int64_t bin_num, float &lat, float &lon)
 
virtual int64_t get_bin_num (int kbin)=0
 
virtual int get_nobs (int kbin)=0
 
virtual int get_nscenes (int kbin)=0
 
virtual float get_weights (int kbin)=0
 
virtual float get_time_rec (int kbin)=0
 
virtual hid_t get_index_table ()=0
 
virtual hid_t get_list_table ()=0
 
virtual hid_t get_data_table (int i)=0
 
virtual int clear_binlist ()=0
 
virtual int copy_binlist (int src, int dest)=0
 
virtual int set_bin_num (int offset, int64_t bin_num)=0
 
virtual int inc_nobs (int offset, int nobs)=0
 
virtual int inc_nscenes (int offset, int nscenes)=0
 
virtual int inc_weights (int offset, float weights)=0
 
virtual int set_weights (int offset, float weights)=0
 
virtual int inc_time_rec (int offset, float time_rec)=0
 
virtual bool has_qual ()=0
 
virtual int setDataPtr (int nbins_to_read)=0
 
virtual int setDataPtrAbsolute (int32_t recordNum)=0
 
virtual int incNumRec (int n_write)=0
 
virtual int close ()=0
 
virtual int32_t nprod ()
 
virtual int32_t get_list_ptr ()
 
virtual int copymeta (int32_t nfiles, Hdf::hdf_bin *input_binfile[])
 

Public Attributes

int64_t totbins
 
int32_t nrows
 
bool active_data_prod [MAXNVDATA]
 
int32_t n_data_records
 
int32_t n_active_prod
 
bool isHDF5
 
bool isCDF4
 
bool hasQual
 
bool hasNoext
 
uint32_t deflate
 
meta_l3bType meta_l3b
 

Protected Attributes

int32_t n_data_prod
 
char proddata_name [MAXNPROD][80]
 
char * product_array [MAXNPROD]
 
l3::L3ShapebinShape
 
size_t binListPtr
 
size_t lastBinListPtr
 
int lastNumBins
 

Detailed Description

Definition at line 14 of file hdf_bin.h.

Constructor & Destructor Documentation

◆ hdf_bin()

hdf_bin ( )

Definition at line 80 of file bin_io.cpp.

◆ ~hdf_bin()

~hdf_bin ( )
virtual

Definition at line 100 of file bin_io.cpp.

Member Function Documentation

◆ bin2latlon()

virtual void bin2latlon ( int64_t  bin_num,
float &  lat,
float &  lon 
)
inlinevirtual

Definition at line 80 of file hdf_bin.h.

◆ clear_binlist()

virtual int clear_binlist ( )
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ close()

virtual int close ( )
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ copy_binlist()

virtual int copy_binlist ( int  src,
int  dest 
)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ copymeta()

int copymeta ( int32_t  nfiles,
Hdf::hdf_bin input_binfile[] 
)
virtual

Definition at line 2874 of file bin_io.cpp.

◆ create()

virtual int create ( const char *  l3b_filename,
int32_t  nrows 
)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ get_basebin()

virtual int64_t get_basebin ( int  irow)
inlinevirtual

Definition at line 76 of file hdf_bin.h.

◆ get_beg()

virtual int64_t get_beg ( )
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ get_bin_num()

virtual int64_t get_bin_num ( int  kbin)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ get_data_table()

virtual hid_t get_data_table ( int  i)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ get_ext()

virtual int get_ext ( )
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ get_index_table()

virtual hid_t get_index_table ( )
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ get_list_ptr()

virtual int32_t get_list_ptr ( )
inlinevirtual

Definition at line 112 of file hdf_bin.h.

◆ get_list_table()

virtual hid_t get_list_table ( )
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ get_nobs()

virtual int get_nobs ( int  kbin)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ get_nscenes()

virtual int get_nscenes ( int  kbin)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ get_numbin()

virtual int64_t get_numbin ( int  irow)
inlinevirtual

Definition at line 72 of file hdf_bin.h.

◆ get_prodname()

int get_prodname ( int  iprod,
char *  prodname 
)
virtual

Definition at line 2802 of file bin_io.cpp.

◆ get_time_rec()

virtual float get_time_rec ( int  kbin)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ get_weights()

virtual float get_weights ( int  kbin)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ getActiveProdName()

const char * getActiveProdName ( int  prodIndex) const
virtual

Get the name of a active product given the index.

Parameters
prodIndexindex of the product
Returns
internal pointer to the product name

Definition at line 2858 of file bin_io.cpp.

◆ getProdIndex()

int getProdIndex ( const char *  prodname) const
virtual

Get the index for the product name

Parameters
prodnamename of the product desired
Returns
product index, or -1 if not found

Definition at line 2842 of file bin_io.cpp.

◆ getProdName()

const char * getProdName ( int  prodIndex) const
virtual

Get the name of a product given the index.

Parameters
prodIndexindex of the product
Returns
internal pointer to the product name

Definition at line 2831 of file bin_io.cpp.

◆ has_qual()

virtual bool has_qual ( )
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ inc_nobs()

virtual int inc_nobs ( int  offset,
int  nobs 
)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ inc_nscenes()

virtual int inc_nscenes ( int  offset,
int  nscenes 
)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ inc_time_rec()

virtual int inc_time_rec ( int  offset,
float  time_rec 
)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ inc_weights()

virtual int inc_weights ( int  offset,
float  weights 
)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ incNumRec()

virtual int incNumRec ( int  n_write)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ nprod()

virtual int32_t nprod ( )
inlinevirtual

Definition at line 108 of file hdf_bin.h.

◆ open()

virtual int open ( const char *  l3b_filename)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ query() [1/3]

int query ( )
virtual

Get the size of the string needed to hold the names of all the products separated by commas.

Returns
length of product string

Definition at line 2764 of file bin_io.cpp.

◆ query() [2/3]

int query ( char ***  prod_array)
virtual

Definition at line 2789 of file bin_io.cpp.

◆ query() [3/3]

int query ( char *  product_list)
virtual

Make a string of all the product names separated by commas.

Parameters
product_listpointer where string is copied to.
Returns
0 if all good

Definition at line 2777 of file bin_io.cpp.

◆ read()

int read ( char *  product_list)
virtual

Definition at line 358 of file bin_io.cpp.

◆ readBinIndex()

virtual int readBinIndex ( int  row_num_to_read)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ readBinList() [1/3]

virtual int readBinList ( )
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ readBinList() [2/3]

virtual int readBinList ( int  nbins_to_read)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ readBinList() [3/3]

virtual int readBinList ( int  nbins_to_read,
int32_t  list_reset_ptr 
)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ readQual() [1/2]

virtual int readQual ( uint8_t *  qual,
int32_t  nbins_to_read 
)
pure virtual

Implemented in hdf4_bin.

◆ readQual() [2/2]

virtual int readQual ( uint8_t *  qual,
int32_t  nbins_to_read,
int32_t  row_num_to_read 
)
pure virtual

Implemented in hdf4_bin.

◆ readSums() [1/2]

virtual int readSums ( float *  sums,
int32_t *  listOfBins,
int32_t  nbins_to_read,
int  iprod 
)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ readSums() [2/2]

virtual int readSums ( float *  sums,
int32_t  nbins_to_read,
int  iprod 
)
pure virtual

Read Bin File Product Data

Parameters
sumsarray to place sum and sumSquares for each product
nbins_to_readnumber of consecutive bins to read
iprodproduct index or -1 to read all active products set by read()
Returns
0 if OK

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ set_bin_num()

virtual int set_bin_num ( int  offset,
int64_t  bin_num 
)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ set_weights()

virtual int set_weights ( int  offset,
float  weights 
)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ setDataPtr()

virtual int setDataPtr ( int  nbins_to_read)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ setDataPtrAbsolute()

virtual int setDataPtrAbsolute ( int32_t  recordNum)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ setProductList()

void setProductList ( int  numProducts,
char *  prodNames[] 
)
virtual

Definition at line 2807 of file bin_io.cpp.

◆ writeBinList()

virtual int writeBinList ( int32_t  nbins_to_write)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ writeQual()

virtual int writeQual ( uint8_t *  qual,
int32_t  nbins_to_write 
)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

◆ writeSums()

virtual int writeSums ( float *  sums,
int32_t  nbins_to_write,
const char *  prodname 
)
pure virtual

Implemented in cdf4_bin, hdf5_bin, and hdf4_bin.

Member Data Documentation

◆ active_data_prod

bool active_data_prod[MAXNVDATA]

Definition at line 121 of file hdf_bin.h.

◆ binListPtr

size_t binListPtr
protected

Definition at line 22 of file hdf_bin.h.

◆ binShape

l3::L3Shape* binShape
protected

Definition at line 20 of file hdf_bin.h.

◆ deflate

uint32_t deflate

Definition at line 129 of file hdf_bin.h.

◆ hasNoext

bool hasNoext

Definition at line 127 of file hdf_bin.h.

◆ hasQual

bool hasQual

Definition at line 126 of file hdf_bin.h.

◆ isCDF4

bool isCDF4

Definition at line 125 of file hdf_bin.h.

◆ isHDF5

bool isHDF5

Definition at line 124 of file hdf_bin.h.

◆ lastBinListPtr

size_t lastBinListPtr
protected

Definition at line 23 of file hdf_bin.h.

◆ lastNumBins

int lastNumBins
protected

Definition at line 24 of file hdf_bin.h.

◆ meta_l3b

meta_l3bType meta_l3b

Definition at line 131 of file hdf_bin.h.

◆ n_active_prod

int32_t n_active_prod

Definition at line 123 of file hdf_bin.h.

◆ n_data_prod

int32_t n_data_prod
protected

Definition at line 16 of file hdf_bin.h.

◆ n_data_records

int32_t n_data_records

Definition at line 122 of file hdf_bin.h.

◆ nrows

int32_t nrows

Definition at line 119 of file hdf_bin.h.

◆ proddata_name

char proddata_name[MAXNPROD][80]
protected

Definition at line 17 of file hdf_bin.h.

◆ product_array

char* product_array[MAXNPROD]
protected

Definition at line 18 of file hdf_bin.h.

◆ totbins

int64_t totbins

Definition at line 118 of file hdf_bin.h.


The documentation for this class was generated from the following files:
  • /gfs-oceanweb/web/ocssw/ocssw_src/oel_hdf4/libbin/hdf_bin.h
  • /gfs-oceanweb/web/ocssw/ocssw_src/oel_hdf4/libbin/bin_io.cpp