6#ifndef _DERIVEDVARMGR_H_
7 #define _DERIVEDVARMGR_H_
36 bool HasVar(
string name)
const {
return (GetVar(name) != NULL); }
43 virtual int initialize(
const std::vector<string> &paths,
const std::vector<string> &options = std::vector<string>());
87 virtual std::vector<string>
getAuxVarNames()
const {
return (std::vector<string>()); }
95 virtual bool getAtt(
string varname,
string attname, vector<double> &values)
const;
99 virtual bool getAtt(
string varname,
string attname, vector<long> &values)
const;
103 virtual bool getAtt(
string varname,
string attname,
string &values)
const;
115 virtual int getDimLensAtLevel(
string varname,
int level, std::vector<size_t> &dims_at_level, std::vector<size_t> &bs_at_level)
const;
131 virtual int readRegion(
int fd,
const vector<size_t> &min,
const vector<size_t> &max,
double *region);
132 virtual int readRegion(
int fd,
const vector<size_t> &min,
const vector<size_t> &max,
float *region);
133 virtual int readRegion(
int fd,
const vector<size_t> &min,
const vector<size_t> &max,
int *region) {
return (-1); }
137 virtual bool variableExists(
size_t ts,
string varname,
int reflevel = 0,
int lod = 0)
const;
140 std::map<string, DerivedVar *> _vars;
141 std::map<string, DerivedDataVar *> _dataVars;
142 std::map<string, DerivedCoordVar *> _coordVars;
143 std::map<string, Mesh> _meshes;
Auxiliary variable metadata.
Base class for storing variable metadata.
Coordinate variable metadata.
Metadata describing a named dimension length.
Metadata describing a computational mesh.
A Template Method design pattern for reading a collection of data.
XType
External storage types for primitive data.
Derived coordinate variable abstract class.
Derived data variable abstract class.
Derived variables constructed from other variables.
virtual std::vector< string > getDimensionNames() const
virtual std::vector< string > getDataVarNames() const
virtual bool getBaseVarInfo(string varname, DC::BaseVar &varInfo) const
virtual int getDimLensAtLevel(string varname, int level, std::vector< size_t > &dims_at_level, std::vector< size_t > &bs_at_level) const
virtual std::vector< string > getMeshNames() const
DerivedVar * GetVar(string name) const
virtual int initialize(const std::vector< string > &paths, const std::vector< string > &options=std::vector< string >())
virtual bool getAtt(string varname, string attname, string &values) const
void AddMesh(const Mesh &m)
void AddCoordVar(DerivedCoordVar *cvar)
virtual std::vector< string > getCoordVarNames() const
virtual int readRegion(int fd, const vector< size_t > &min, const vector< size_t > &max, int *region)
void AddDataVar(DerivedDataVar *dvar)
virtual int openVariableRead(size_t ts, string varname, int level=0, int lod=0)
virtual bool getDataVarInfo(string varname, DC::DataVar &datavarInfo) const
void RemoveVar(const DerivedVar *var)
virtual size_t getNumRefLevels(string varname) const
virtual int closeVariable(int fd)
virtual std::vector< string > getAttNames(string varname) const
virtual bool getAtt(string varname, string attname, vector< long > &values) const
virtual int readRegion(int fd, const vector< size_t > &min, const vector< size_t > &max, double *region)
bool HasVar(string name) const
virtual int readRegion(int fd, const vector< size_t > &min, const vector< size_t > &max, float *region)
virtual bool getAuxVarInfo(string varname, DC::AuxVar &varInfo) const
virtual string getMapProjection() const
virtual XType getAttType(string varname, string attname) const
virtual bool variableExists(size_t ts, string varname, int reflevel=0, int lod=0) const
virtual bool getCoordVarInfo(string varname, DC::CoordVar &cvarInfo) const
virtual bool getAtt(string varname, string attname, vector< double > &values) const
virtual bool getDimension(string dimname, DC::Dimension &dimension) const
virtual bool getMesh(string mesh_name, DC::Mesh &mesh) const
virtual std::vector< string > getAuxVarNames() const
Derived variable abstract class.