|
virtual void | clear_embedded () |
| Clears the list of embedded variable names.
|
|
virtual void | convert (std::vector< std::string > embed, bool is_dap4=false, bool is_dap4_group=false) |
|
virtual void | convert (vector< string > embed, bool _dap4, bool is_dap4_group) override |
| convert the DAP Grid to a set of embedded variables
|
|
virtual void | define (int ncid) override |
| define the DAP Grid in the netcdf file
|
|
virtual void | dump (ostream &strm) const override |
| dumps information about this object for debugging purposes
|
|
virtual void | dump (std::ostream &strm) const =0 |
| dump the contents of this object to the specified ostream
|
|
| FONcGrid (libdap::BaseType *b) |
| Constructor for FONcGrid that takes a DAP Grid.
|
|
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.
|
|
virtual bool | isNetCDF4_ENHANCED () |
|
string | name () override |
| returns the name of the DAP Grid
|
|
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)
|
|
virtual void | setVersion (const std::string &version) |
| Identifies variable with use of NetCDF4 features.
|
|
virtual nc_type | type () |
| Returns the type of data of this variable.
|
|
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) override |
| Write the maps and array for the grid.
|
|
virtual | ~FONcGrid () |
| Destructor that cleans up the grid.
|
|
A DAP Grid with file out netcdf information included.
This class represents a DAP Grid with additional information needed to write it out to a netcdf file and includes a reference to the actual DAP Grid being converted, the maps of the grid stored as FONcMap instances, and the array of the grid stored as a FONcArray.
NetCDF does not have a grid representation, per se. For this reason, we flatten the DAP grid into different arrays (maps) as well as the grid's actual array.
It is possible to share maps among grids, so a global map list is kept as well.
Definition at line 61 of file FONcGrid.h.
Destructor that cleans up the grid.
The DAP Grid instance does not belong to the FONcGrid instance, so it is not deleted.
Since maps can be shared by grids, FONcMap uses reference counting. So instead of deleting the FONcMap instance, its reference count is decremented.
Definition at line 78 of file FONcGrid.cc.
void FONcGrid::convert |
( |
vector< string > |
embed, |
|
|
bool |
_dap4, |
|
|
bool |
is_dap4_group |
|
) |
| |
|
overridevirtual |
convert the DAP Grid to a set of embedded variables
A DAP Grid contains one or more maps (arrays) and an array of values. The convert method creates a FONcMap for each of the grid's maps, and a FONcArray for the grid's array.
A map can be shared by other grids if the name of the map is the same, the size of the map is the same, the type of the map is the same, and the values of the map are the same. If they are the same, then it references that shared map instead of creating a new one.
- Parameters
-
embed | The list of parent names for this grid |
- Exceptions
-
Definition at line 138 of file FONcGrid.cc.
void FONcGrid::define |
( |
int |
ncid | ) |
|
|
overridevirtual |
define the DAP Grid in the netcdf file
Iterates through the maps for this grid and defines each of those, if they haven't already been defined by a grid that shares the map. Then it defines the grid's array in the netcdf file.
Any attributes for the grid will be written out for each of the maps and the array.
- Parameters
-
ncid | The id of the NetCDF file |
- Exceptions
-
Reimplemented from FONcBaseType.
Definition at line 104 of file FONcGrid.cc.
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 OPeNDAPObj 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
-
strm | C++ i/o stream to dump the object to |
Implements BESObj.
Implemented in FONcArray.
nc_type FONcBaseType::type |
( |
| ) |
|
|
virtualinherited |
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 FONcFloat, FONcInt, FONcInt64, FONcInt8, FONcShort, FONcStr, FONcUByte, FONcUInt, FONcUInt64, FONcUShort, FONcByte, and FONcDouble.
Definition at line 86 of file FONcBaseType.cc.