OB.DAAC Logo
NASA Logo
Ocean Color Science Software

ocssw V2022
productInfo.h File Reference
#include <stdint.h>
Include dependency graph for productInfo.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  productInfo_str
 

Macros

#define PRODUCT_DEFAULT_description   "no description"
 
#define PRODUCT_DEFAULT_units   "unspecified"
 
#define PRODUCT_DEFAULT_palette   "default"
 
#define PRODUCT_DEFAULT_paramDesignator   "none"
 
#define PRODUCT_DEFAULT_paramWaveMin   -1
 
#define PRODUCT_DEFAULT_paramWaveMax   -1
 
#define PRODUCT_DEFAULT_standardName   NULL
 
#define PRODUCT_DEFAULT_category   "Miscellaneous"
 
#define PRODUCT_DEFAULT_dataType   "float"
 
#define PRODUCT_DEFAULT_prefix   NULL
 
#define PRODUCT_DEFAULT_suffix   NULL
 
#define PRODUCT_DEFAULT_algorithmName   ""
 
#define PRODUCT_DEFAULT_productName   ""
 
#define PRODUCT_DEFAULT_cat_ix   -1
 
#define PRODUCT_DEFAULT_prod_ix   -1
 
#define PRODUCT_DEFAULT_rank   2
 
#define PRODUCT_DEFAULT_fillValue   -32767
 
#define PRODUCT_DEFAULT_fillValue_byte   -1
 
#define PRODUCT_DEFAULT_fillValue_ubyte   0xFF
 
#define PRODUCT_DEFAULT_fillValue_ushort   0xFFFF
 
#define PRODUCT_DEFAULT_fillValue_uint   0xFFFFFFFF
 
#define PRODUCT_DEFAULT_validMin   0
 
#define PRODUCT_DEFAULT_validMax   0
 
#define PRODUCT_DEFAULT_displayScale   "linear"
 
#define PRODUCT_DEFAULT_displayMin   0
 
#define PRODUCT_DEFAULT_displayMax   0
 
#define PRODUCT_DEFAULT_scaleFactor   1
 
#define PRODUCT_DEFAULT_addOffset   0
 
#define PRODUCT_DEFAULT_reference   NULL
 
#define PRODUCT_DEFAULT_comment   NULL
 
#define PRODUCT_DEFAULT_titleFormat   "no format string"
 

Functions

void clearProductInfo (productInfo_t *info)
 
void initProductInfo (productInfo_t *info)
 
productInfo_t * allocateProductInfo ()
 
void freeProductInfo (productInfo_t *info)
 
void copyProductInfo (productInfo_t *dest, const productInfo_t *src)
 
void getFirstProductInfo (productInfo_t *info)
 
int getNextProductInfo (productInfo_t *info)
 
int findProductInfo (const char *name, int sensorId, productInfo_t *info)
 
char * getProductNameFull (productInfo_t *info)
 
void printProductInfo (const char *productFullName, const productInfo_t *info)
 
const char * getDOI (const char *platform, const char *sensor, const char *level, const char *suite, const char *version)
 
const char * getGCMDKeywords (const char *suite)
 

Macro Definition Documentation

◆ PRODUCT_DEFAULT_addOffset

#define PRODUCT_DEFAULT_addOffset   0

Definition at line 39 of file productInfo.h.

◆ PRODUCT_DEFAULT_algorithmName

#define PRODUCT_DEFAULT_algorithmName   ""

Definition at line 23 of file productInfo.h.

◆ PRODUCT_DEFAULT_cat_ix

#define PRODUCT_DEFAULT_cat_ix   -1

Definition at line 25 of file productInfo.h.

◆ PRODUCT_DEFAULT_category

#define PRODUCT_DEFAULT_category   "Miscellaneous"

Definition at line 19 of file productInfo.h.

◆ PRODUCT_DEFAULT_comment

#define PRODUCT_DEFAULT_comment   NULL

Definition at line 41 of file productInfo.h.

◆ PRODUCT_DEFAULT_dataType

#define PRODUCT_DEFAULT_dataType   "float"

Definition at line 20 of file productInfo.h.

◆ PRODUCT_DEFAULT_description

#define PRODUCT_DEFAULT_description   "no description"

Definition at line 12 of file productInfo.h.

◆ PRODUCT_DEFAULT_displayMax

#define PRODUCT_DEFAULT_displayMax   0

Definition at line 37 of file productInfo.h.

◆ PRODUCT_DEFAULT_displayMin

#define PRODUCT_DEFAULT_displayMin   0

Definition at line 36 of file productInfo.h.

◆ PRODUCT_DEFAULT_displayScale

#define PRODUCT_DEFAULT_displayScale   "linear"

Definition at line 35 of file productInfo.h.

◆ PRODUCT_DEFAULT_fillValue

#define PRODUCT_DEFAULT_fillValue   -32767

Definition at line 28 of file productInfo.h.

◆ PRODUCT_DEFAULT_fillValue_byte

#define PRODUCT_DEFAULT_fillValue_byte   -1

Definition at line 29 of file productInfo.h.

◆ PRODUCT_DEFAULT_fillValue_ubyte

#define PRODUCT_DEFAULT_fillValue_ubyte   0xFF

Definition at line 30 of file productInfo.h.

◆ PRODUCT_DEFAULT_fillValue_uint

#define PRODUCT_DEFAULT_fillValue_uint   0xFFFFFFFF

Definition at line 32 of file productInfo.h.

◆ PRODUCT_DEFAULT_fillValue_ushort

#define PRODUCT_DEFAULT_fillValue_ushort   0xFFFF

Definition at line 31 of file productInfo.h.

◆ PRODUCT_DEFAULT_palette

#define PRODUCT_DEFAULT_palette   "default"

Definition at line 14 of file productInfo.h.

◆ PRODUCT_DEFAULT_paramDesignator

#define PRODUCT_DEFAULT_paramDesignator   "none"

Definition at line 15 of file productInfo.h.

◆ PRODUCT_DEFAULT_paramWaveMax

#define PRODUCT_DEFAULT_paramWaveMax   -1

Definition at line 17 of file productInfo.h.

◆ PRODUCT_DEFAULT_paramWaveMin

#define PRODUCT_DEFAULT_paramWaveMin   -1

Definition at line 16 of file productInfo.h.

◆ PRODUCT_DEFAULT_prefix

#define PRODUCT_DEFAULT_prefix   NULL

Definition at line 21 of file productInfo.h.

◆ PRODUCT_DEFAULT_prod_ix

#define PRODUCT_DEFAULT_prod_ix   -1

Definition at line 26 of file productInfo.h.

◆ PRODUCT_DEFAULT_productName

#define PRODUCT_DEFAULT_productName   ""

Definition at line 24 of file productInfo.h.

◆ PRODUCT_DEFAULT_rank

#define PRODUCT_DEFAULT_rank   2

Definition at line 27 of file productInfo.h.

◆ PRODUCT_DEFAULT_reference

#define PRODUCT_DEFAULT_reference   NULL

Definition at line 40 of file productInfo.h.

◆ PRODUCT_DEFAULT_scaleFactor

#define PRODUCT_DEFAULT_scaleFactor   1

Definition at line 38 of file productInfo.h.

◆ PRODUCT_DEFAULT_standardName

#define PRODUCT_DEFAULT_standardName   NULL

Definition at line 18 of file productInfo.h.

◆ PRODUCT_DEFAULT_suffix

#define PRODUCT_DEFAULT_suffix   NULL

Definition at line 22 of file productInfo.h.

◆ PRODUCT_DEFAULT_titleFormat

#define PRODUCT_DEFAULT_titleFormat   "no format string"

Definition at line 42 of file productInfo.h.

◆ PRODUCT_DEFAULT_units

#define PRODUCT_DEFAULT_units   "unspecified"

Definition at line 13 of file productInfo.h.

◆ PRODUCT_DEFAULT_validMax

#define PRODUCT_DEFAULT_validMax   0

Definition at line 34 of file productInfo.h.

◆ PRODUCT_DEFAULT_validMin

#define PRODUCT_DEFAULT_validMin   0

Definition at line 33 of file productInfo.h.

Function Documentation

◆ allocateProductInfo()

productInfo_t* allocateProductInfo ( )

allocate memory for the product into structure and init to defaults. structure should be freed using freeProductInfo()

Returns
pointer to newly allocated structure

Definition at line 118 of file productInfo.cpp.

◆ clearProductInfo()

void clearProductInfo ( productInfo_t *  info)

set the product structure to defaults freeing memory from the current values

Parameters
infodestination product structure

Definition at line 42 of file productInfo.cpp.

◆ copyProductInfo()

void copyProductInfo ( productInfo_t *  dest,
const productInfo_t *  src 
)

copy product info structure

Parameters
destdestination product structure
srcsource product structure

Definition at line 187 of file productInfo.cpp.

◆ findProductInfo()

int findProductInfo ( const char *  productName,
int  sensorId,
productInfo_t *  info 
)

find product and fill in the product structure.

Parameters
productNameproduct to find
sensorIdsensor ID to use when looking up the product
infopre allocated product structure to fill (allocateProductInfo)
Returns
1 if product found, 0 if not found

Definition at line 905 of file productInfo.cpp.

◆ freeProductInfo()

void freeProductInfo ( productInfo_t *  info)

free all the internal memory and the productInfo structure memory.

Parameters
infopointer to the product structure

Definition at line 130 of file productInfo.cpp.

◆ getDOI()

const char* getDOI ( const char *  platform,
const char *  sensor,
const char *  level,
const char *  suite,
const char *  version 
)

Definition at line 16 of file getDOI.cpp.

◆ getFirstProductInfo()

void getFirstProductInfo ( productInfo_t *  info)

find first product and fill in the product structure.

Parameters
infopre allocated product structure to fill in

Definition at line 873 of file productInfo.cpp.

◆ getGCMDKeywords()

const char* getGCMDKeywords ( const char *  suite)

Definition at line 15 of file getGCMDKeywords.cpp.

◆ getNextProductInfo()

int getNextProductInfo ( productInfo_t *  info)

find next product and fill in the product structure.

Parameters
infopre allocated product structure to fill in
Returns
1 if product found, 0 if no more products

Definition at line 887 of file productInfo.cpp.

◆ getProductNameFull()

char* getProductNameFull ( productInfo_t *  info)
Parameters
infoproduct structure to read
Returns
full product name. Pointer to internal memory.

Definition at line 978 of file productInfo.cpp.

◆ initProductInfo()

void initProductInfo ( productInfo_t *  info)

set the product structure to defaults ignoring the current values

Parameters
infodestination product structure

Definition at line 107 of file productInfo.cpp.

◆ printProductInfo()

void printProductInfo ( const char *  productFullName,
const productInfo_t *  info 
)

print product structure.

Parameters
productFullNameproduct name
infostructure to print

Definition at line 996 of file productInfo.cpp.