bes  Updated for version 3.20.8
FONcBaseType Class Referenceabstract

A DAP BaseType with file out netcdf information included. More...

#include <FONcBaseType.h>

Collaboration diagram for FONcBaseType:
Collaboration graph

Public Member Functions

virtual void clear_embedded ()
 Clears the list of embedded variable names. More...
 
virtual void convert (std::vector< std::string > embed, bool is_dap4_group=false)
 
virtual void define (int ncid)
 Define the variable in the netcdf file. More...
 
virtual void dump (std::ostream &strm) const =0
 dump the contents of this object to the specified ostream More...
 
virtual bool isNetCDF4 ()
 Returns true if NetCDF4 features will be required. More...
 
virtual bool isNetCDF4_ENHANCED ()
 
virtual std::string name ()=0
 
virtual void set_is_dap4 (bool set_dap4)
 
virtual void setNC4DataModel (std::string nc4_datamodel)
 Identifies the netCDF4 data model (CLASSIC or ENHANCED) More...
 
virtual void setVersion (std::string version)
 Identifies variable with use of NetCDF4 features. More...
 
virtual nc_type type ()
 Returns the type of data of this variable. More...
 
virtual int varid () const
 
virtual void write (int)
 

Protected Attributes

bool _defined
 
std::vector< std::string > _embed
 
std::string _nc4_datamodel
 
std::string _ncVersion
 
std::string _orig_varname
 
int _varid
 
std::string _varname
 
bool is_dap4
 
bool is_dap4_group
 

Detailed Description

A DAP BaseType with file out netcdf information included.

This class represents a DAP BaseType with additional information needed to write it out to a netcdf file. Includes a reference to the actual DAP BaseType being converted

Definition at line 61 of file FONcBaseType.h.

Member Function Documentation

◆ clear_embedded()

void FONcBaseType::clear_embedded ( )
virtual

Clears the list of embedded variable names.

Definition at line 82 of file FONcBaseType.cc.

◆ define()

void FONcBaseType::define ( int  ncid)
virtual

Define the variable in the netcdf file.

This method creates this variable in the netcdf file. This implementation is used for only simple types (byte, short, int, float, double), and not for the complex types (str, structure, array, grid, sequence)

Parameters
ncidId of the NetCDF file
Exceptions
BESInternalErrorif defining the variable fails

Reimplemented in FONcUShort, FONcUInt64, FONcUInt, FONcUByte, FONcStructure, FONcStr, FONcShort, FONcSequence, FONcInt8, FONcInt64, FONcInt, FONcGrid, FONcFloat, FONcDouble, FONcByte, and FONcArray.

Definition at line 54 of file FONcBaseType.cc.

◆ dump()

virtual void FONcBaseType::dump ( std::ostream &  strm) const
pure virtual

dump the contents of this object to the specified ostream

This method is implemented by all derived classes to dump their contents, in other words, any state they might have, private variables, etc...

The inline function below can be used to dump the contents of an OPeNDAOObj object. For example, the object Animal is derived from BESObj. A user could do the following:

Animal *a = new dog( "Sparky" ) ; cout << a << endl ;

And the dump method for dog could display the name passed into the constructor, the (this) pointer of the object, etc...

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

Implements BESObj.

Implemented in FONcArray.

◆ isNetCDF4()

bool FONcBaseType::isNetCDF4 ( )
virtual

Returns true if NetCDF4 features will be required.

Definition at line 106 of file FONcBaseType.cc.

◆ setNC4DataModel()

void FONcBaseType::setNC4DataModel ( std::string  nc4_datamodel)
virtual

Identifies the netCDF4 data model (CLASSIC or ENHANCED)

Definition at line 98 of file FONcBaseType.cc.

◆ setVersion()

void FONcBaseType::setVersion ( std::string  version)
virtual

Identifies variable with use of NetCDF4 features.

Definition at line 89 of file FONcBaseType.cc.

◆ type()

nc_type FONcBaseType::type ( )
virtual

Returns the type of data of this variable.

This implementation of the method returns the default type of data. Subclasses of FONcBaseType will return the specific type of data for simple types

Reimplemented in FONcUShort, FONcUInt64, FONcUInt, FONcUByte, FONcStr, FONcShort, FONcInt8, FONcInt64, FONcInt, FONcFloat, FONcDouble, and FONcByte.

Definition at line 75 of file FONcBaseType.cc.


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