29 #ifndef __NCML_MODULE__VARIABLE_ELEMENT_H__
30 #define __NCML_MODULE__VARIABLE_ELEMENT_H__
80 const std::string
name()
const
85 const std::string
type()
const
137 void processExistingVariable(
NCMLParser& p, libdap::BaseType* pVar);
180 void processNewScalar(
NCMLParser& p,
const std::string& dapType);
194 void processNewArray(
NCMLParser& p,
const std::string& dapType);
203 libdap::BaseType* replaceArrayIfNeeded(
NCMLParser& p, libdap::BaseType* pOrgVar,
const string&
name);
214 void addNewVariableAndEnterScope(
NCMLParser& p,
const std::string& dapType);
219 void enterScope(
NCMLParser& p, libdap::BaseType* pVar);
227 bool isDimensionNumericConstant(
const std::string& dimToken)
const;
232 unsigned int getSizeForDimension(
NCMLParser& p,
const std::string& dimToken)
const;
249 unsigned int getProductOfDimensionSizes(
NCMLParser& p)
const;
251 static vector<string> getValidAttributes();
262 vector<string> _shapeTokens;
265 libdap::BaseType* _pNewlyCreatedVar;
bool isNewVariable() const
virtual void setAttributes(const XMLAttributeMap &attrs)
Set the attributes of this from the map.
const std::string type() const
An abstract superclass for NCMLArray that handles the non-parameterized functionality and allows u...
virtual void handleBegin()
Handle a begin on this element.
const std::string shape() const
static class NCMLUtil overview
virtual string toString() const
Return a string describing the element.
bool checkGotValues() const
virtual void handleContent(const string &content)
Handle the characters content for the element.
virtual ~VariableElement()
const std::string orgName() const
virtual VariableElement * clone() const
Make and return a copy of this.
Base class for NcML element concrete classes.
static const string _sTypeName
static const vector< string > _sValidAttributes
Concrete class for NcML element.
virtual const string & getTypeName() const
Return the type of the element, which should be: the same as ConcreteClassName::getTypeName() ...
void setGotValues()
Called once we set the values from ValuesElement so we are aware.
const std::string name() const
virtual void handleEnd()
Handle the closing of this element.