bes  Updated for version 3.20.10
FONcStr Class Referenceabstract

A class representing the DAP Str class for file out netcdf. More...

#include <FONcStr.h>

Collaboration diagram for FONcStr:
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=false, bool is_dap4_group=false)
 
virtual void define (int ncid)
 Define the string variable in the netcdf file. More...
 
virtual void dump (ostream &strm) const
 dumps information about this object for debugging purposes More...
 
virtual void dump (std::ostream &strm) const =0
 dump the contents of this object to the specified ostream More...
 
 FONcStr (libdap::BaseType *b)
 Constructor for FONcStr that takes a DAP Str. More...
 
libdap::DDS * get_dds () const
 
libdap::ConstraintEvaluator * get_eval () const
 
virtual libdap::AttrType getAttrType (nc_type t)
 
virtual D4AttributeType getD4AttrType (nc_type t)
 
virtual bool isNetCDF4 ()
 Returns true if NetCDF4 features will be required. More...
 
virtual bool isNetCDF4_ENHANCED ()
 
virtual string name ()
 returns the name of the DAP Str More...
 
void set_dds (libdap::DDS *dds)
 
void set_eval (libdap::ConstraintEvaluator *eval)
 
virtual void set_is_dap4 (bool set_dap4)
 
virtual void setNC4DataModel (const string &nc4_datamodel)
 Identifies the netCDF4 data model (CLASSIC or ENHANCED) More...
 
virtual void setVersion (const std::string &version)
 Identifies variable with use of NetCDF4 features. More...
 
virtual nc_type type ()
 returns the netcdf type of the DAP Str More...
 
virtual void updateAttrType (libdap::AttrTable &attrs, nc_type t)
 
virtual void updateD4AttrType (libdap::D4Attributes *d4_attrs, nc_type t)
 
virtual int varid () const
 
virtual void write (int ncid)
 Write the str out to the netcdf file. More...
 
virtual ~FONcStr ()
 Destructor that cleans up the str. More...
 

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
 
libdap::DDS * d_dds
 
libdap::ConstraintEvaluator * d_eval
 
bool is_dap4
 
bool is_dap4_group
 

Detailed Description

A class representing the DAP Str class for file out netcdf.

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

Note
That the FONcStr does not inherit from the libdap::Str class.

Definition at line 50 of file FONcStr.h.

Constructor & Destructor Documentation

◆ FONcStr()

FONcStr::FONcStr ( libdap::BaseType *  b)

Constructor for FONcStr that takes a DAP Str.

This constructor takes a DAP BaseType and makes sure that it is a DAP Str instance. If not, it throws an exception

Parameters
bA DAP BaseType that should be a Str
Exceptions
BESInternalErrorif the BaseType is not a Str

Definition at line 53 of file FONcStr.cc.

◆ ~FONcStr()

FONcStr::~FONcStr ( )
virtual

Destructor that cleans up the str.

The DAP Str instance does not belong to the FONcByte instance, so it is not cleaned up. During definition, though, the data needed to be extracted to calculate the length dimension. It is kept so that we don't have to get the data twice. The string data is deleted here.

Definition at line 68 of file FONcStr.cc.

Member Function Documentation

◆ clear_embedded()

void FONcBaseType::clear_embedded ( )
virtualinherited

Clears the list of embedded variable names.

Definition at line 93 of file FONcBaseType.cc.

◆ define()

void FONcStr::define ( int  ncid)
virtual

Define the string variable in the netcdf file.

This method creates this string variable in the netcdf file. To do this we define a dimension that specifies the length of the string.

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

Reimplemented from FONcBaseType.

Definition at line 81 of file FONcStr.cc.

◆ dump() [1/2]

void FONcStr::dump ( ostream &  strm) const
virtual

dumps information about this object for debugging purposes

Displays the pointer value of this instance plus instance data

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

Definition at line 186 of file FONcStr.cc.

◆ dump() [2/2]

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

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 ( )
virtualinherited

Returns true if NetCDF4 features will be required.

Definition at line 118 of file FONcBaseType.cc.

◆ name()

string FONcStr::name ( )
virtual

returns the name of the DAP Str

Returns
The name of the DAP Str

Implements FONcBaseType.

Definition at line 166 of file FONcStr.cc.

◆ setNC4DataModel()

void FONcBaseType::setNC4DataModel ( const string &  nc4_datamodel)
virtualinherited

Identifies the netCDF4 data model (CLASSIC or ENHANCED)

Definition at line 109 of file FONcBaseType.cc.

◆ setVersion()

void FONcBaseType::setVersion ( const std::string &  version)
virtualinherited

Identifies variable with use of NetCDF4 features.

Definition at line 100 of file FONcBaseType.cc.

◆ type()

nc_type FONcStr::type ( )
virtual

returns the netcdf type of the DAP Str

Returns
The nc_type of NC_CHAR

Reimplemented from FONcBaseType.

Definition at line 175 of file FONcStr.cc.

◆ write()

void FONcStr::write ( int  ncid)
virtual

Write the str out to the netcdf file.

Once the str is defined, the value of the str can be written out as well using nc_put_vara_text

Parameters
ncidThe id of the netcdf file
Exceptions
BESInternalErrorif there is a problem writing the value out to the netcdf file

Implements FONcBaseType.

Definition at line 140 of file FONcStr.cc.


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