bes Updated for version 3.21.1
The Backend Server (BES) is the lower two tiers of the Hyrax data server
FoDapCovJsonTransform Class Reference

#include <FoDapCovJsonTransform.h>

Inheritance diagram for FoDapCovJsonTransform:
Inheritance graph
Collaboration diagram for FoDapCovJsonTransform:
Collaboration graph

Public Member Functions

virtual void addTestAxis (std::string name, std::string values)
 
virtual void addTestParameter (std::string id, std::string name, std::string type, std::string dataType, std::string unit, std::string longName, std::string standardName, std::string shape, std::string values)
 
template<typename T>
void covjsonSimpleTypeArray (ostream *strm, libdap::Array *a, string indent, bool sendData)
 
template<typename T>
unsigned int covjsonSimpleTypeArrayWorker (ostream *strm, T *values, unsigned int indx, vector< unsigned int > *shape, unsigned int currentDim, bool is_axis_t_sgeo, libdap::Type a_type)
 
virtual void dump (std::ostream &strm) const
 Dumps information about this transformation object for debugging purposes.
 
 FoDapCovJsonTransform (libdap::DDS *dds)
 Get the CovJSON encoding for a DDS.
 
 FoDapCovJsonTransform (libdap::DMR *dmr)
 
virtual void printAxes (std::ostream &ostrm, std::string indent)
 
virtual void printCoverage (std::ostream &ostrm, std::string indent)
 
virtual void printDomain (std::ostream &ostrm, std::string indent)
 
virtual void printParameters (std::ostream &ostrm, std::string indent)
 
virtual void printRanges (std::ostream &ostrm, std::string indent)
 
virtual void printReference (std::ostream &ostrm, std::string indent)
 
virtual void setTestAxesExistence (bool x, bool y, bool z, bool t)
 
virtual void setTestDomainType (int domainType)
 
virtual void transform (std::ostream &ostrm, bool sendData, bool testOverride)
 Transforms each of the marked variables of the DDS to CovJSON.
 
virtual void transform_dap4 (std::ostream &ostrm, bool sendData, bool testOverride)
 
virtual ~FoDapCovJsonTransform ()
 Destructs the FoDapCovJsonTransform object and frees all memory.
 

Detailed Description

Used to transform a DDS into a CovJSON metadata or CovJSON data document. The output is written to a local file whose name is passed as a parameter the constructor.

Definition at line 56 of file FoDapCovJsonTransform.h.

Constructor & Destructor Documentation

◆ FoDapCovJsonTransform() [1/2]

FoDapCovJsonTransform::FoDapCovJsonTransform ( libdap::DDS * dds)
explicit

Get the CovJSON encoding for a DDS.

Set up the CovJSON output transform object. This constructor builds an object that will build a CovJSON encoding for a DDS. This class can return both the entire DDS, including data, and a metadata-only response.

Note
The 'transform' method is used to build the response and a bool flag is passed to it to select data or metadata. However, if that flag is true and the DDS does not already contain data, the result is undefined.
Parameters
ddsDDS object
Exceptions
BESInternalErrorif the DDS* is null or if localfile is empty.

Definition at line 1026 of file FoDapCovJsonTransform.cc.

◆ FoDapCovJsonTransform() [2/2]

FoDapCovJsonTransform::FoDapCovJsonTransform ( libdap::DMR * dmr)
explicit

Definition at line 1031 of file FoDapCovJsonTransform.cc.

◆ ~FoDapCovJsonTransform()

virtual FoDapCovJsonTransform::~FoDapCovJsonTransform ( )
inlinevirtual

Destructs the FoDapCovJsonTransform object and frees all memory.

Definition at line 618 of file FoDapCovJsonTransform.h.

Member Function Documentation

◆ addTestAxis()

virtual void FoDapCovJsonTransform::addTestAxis ( std::string name,
std::string values )
inlinevirtual

Definition at line 640 of file FoDapCovJsonTransform.h.

◆ addTestParameter()

virtual void FoDapCovJsonTransform::addTestParameter ( std::string id,
std::string name,
std::string type,
std::string dataType,
std::string unit,
std::string longName,
std::string standardName,
std::string shape,
std::string values )
inlinevirtual

Definition at line 644 of file FoDapCovJsonTransform.h.

◆ covjsonSimpleTypeArray()

template<typename T>
void FoDapCovJsonTransform::covjsonSimpleTypeArray ( ostream * strm,
libdap::Array * a,
string indent,
bool sendData )

Definition at line 350 of file FoDapCovJsonTransform.cc.

◆ covjsonSimpleTypeArrayWorker()

template<typename T>
unsigned int FoDapCovJsonTransform::covjsonSimpleTypeArrayWorker ( ostream * strm,
T * values,
unsigned int indx,
vector< unsigned int > * shape,
unsigned int currentDim,
bool is_axis_t_sgeo,
libdap::Type a_type )

Definition at line 250 of file FoDapCovJsonTransform.cc.

◆ dump()

void FoDapCovJsonTransform::dump ( std::ostream & strm) const
virtual

Dumps information about this transformation object for debugging purposes.

Displays the pointer value of this instance plus instance data, including all of the FoCovJson objects converted from DAP objects that are to be sent to the netcdf file.

Parameters
strmC++ i/o stream to dump the information to

Implements BESObj.

Definition at line 1037 of file FoDapCovJsonTransform.cc.

◆ printAxes()

virtual void FoDapCovJsonTransform::printAxes ( std::ostream & ostrm,
std::string indent )
inlinevirtual

Definition at line 665 of file FoDapCovJsonTransform.h.

◆ printCoverage()

virtual void FoDapCovJsonTransform::printCoverage ( std::ostream & ostrm,
std::string indent )
inlinevirtual

Definition at line 657 of file FoDapCovJsonTransform.h.

◆ printDomain()

virtual void FoDapCovJsonTransform::printDomain ( std::ostream & ostrm,
std::string indent )
inlinevirtual

Definition at line 661 of file FoDapCovJsonTransform.h.

◆ printParameters()

virtual void FoDapCovJsonTransform::printParameters ( std::ostream & ostrm,
std::string indent )
inlinevirtual

Definition at line 673 of file FoDapCovJsonTransform.h.

◆ printRanges()

virtual void FoDapCovJsonTransform::printRanges ( std::ostream & ostrm,
std::string indent )
inlinevirtual

Definition at line 677 of file FoDapCovJsonTransform.h.

◆ printReference()

virtual void FoDapCovJsonTransform::printReference ( std::ostream & ostrm,
std::string indent )
inlinevirtual

Definition at line 669 of file FoDapCovJsonTransform.h.

◆ setTestAxesExistence()

virtual void FoDapCovJsonTransform::setTestAxesExistence ( bool x,
bool y,
bool z,
bool t )
inlinevirtual

Definition at line 649 of file FoDapCovJsonTransform.h.

◆ setTestDomainType()

virtual void FoDapCovJsonTransform::setTestDomainType ( int domainType)
inlinevirtual

Definition at line 653 of file FoDapCovJsonTransform.h.

◆ transform()

virtual void FoDapCovJsonTransform::transform ( std::ostream & ostrm,
bool sendData,
bool testOverride )
virtual

Transforms each of the marked variables of the DDS to CovJSON.

For each variable in the DDS, write out that variable and its attributes as CovJSON. Each OPeNDAP data type translates into a particular CovJSON type. Also write out any global attributes stored at the top level of the DataDDS.

Parameters
ostrmWrite the CovJSON to this stream
sendDataTrue if data should be sent, False to send only metadata.
testOverridetrue: print to stream regardless of whether the file can be converted to CoverageJSON (for testing purposes) false: run normally

◆ transform_dap4()

void FoDapCovJsonTransform::transform_dap4 ( std::ostream & ostrm,
bool sendData,
bool testOverride )
virtual

Definition at line 1052 of file FoDapCovJsonTransform.cc.


The documentation for this class was generated from the following files: