28 #include "Constructor.h"
29 #include "D4Dimensions.h"
30 #include "D4EnumDefs.h"
60 vector<D4Group*> d_groups;
65 void m_duplicate(
const D4Group &g);
68 typedef vector<D4Group*>::iterator groupsIter;
69 typedef vector<D4Group*>::const_iterator groupsCIter;
89 virtual std::string
FQN()
const;
93 Array *find_map_source(
const string &path);
95 D4EnumDef *find_enum_def(
const string &path);
101 d_enum_defs->set_parent(
this);
115 groupsIter
grp_end() {
return d_groups.end(); }
117 void add_group(
const D4Group *g) {
118 add_group_nocopy(
new D4Group(*g));
121 void add_group_nocopy(
D4Group *g) {
123 d_groups.push_back(g);
125 void insert_group_nocopy(
D4Group *g, groupsIter i) {
127 d_groups.insert(i, g);
130 D4Group *find_child_grp(
const string &grp_name);
140 virtual void serialize(D4StreamMarshaller &m, DMR &dmr,
bool filter =
false);
141 virtual void deserialize(D4StreamUnMarshaller &um, DMR &dmr);
143 void print_dap4(XMLWriter &xml,
bool constrained =
false);
145 virtual std::vector<BaseType *> *
transform_to_dap2(AttrTable *parent_attr_table);
A multidimensional array of identical data types.
The basic data type for the DODS DAP types.
virtual string name() const
Returns the name of the class instance.
virtual string dataset() const
Returns the name of the dataset used to create this instance.
D4Dimensions * dims()
Get the dimensions defined for this Group.
D4Dimension * find_dim(const string &path)
Find the dimension using a path. Using the DAP4 name syntax, lookup a dimension. The dimension must b...
virtual void intern_data()
Read data into this variable.
virtual void set_read_p(bool state)
Sets the value of the read_p property.
BaseType * find_var(const string &name)
virtual std::string FQN() const
groupsIter grp_begin()
Get an iterator to the start of the values.
virtual void deserialize(D4StreamUnMarshaller &um, DMR &dmr)
virtual void set_send_p(bool state)
uint64_t request_size_kb(bool constrained)
Get the estimated size of a response in kilobytes. This method looks at the variables in the DDS and ...
groupsIter grp_end()
Get an iterator to the end of the values.
D4EnumDefs * enum_defs()
Get the enumerations defined for this Group.
virtual BaseType * ptr_duplicate()
virtual std::vector< BaseType * > * transform_to_dap2(AttrTable *parent_attr_table)
Transform the D4Group's variables to DAP2 variables.
long request_size(bool constrained)
D4Group(const string &name)
void print_dap4(XMLWriter &xml, bool constrained=false)
virtual void serialize(D4StreamMarshaller &m, DMR &dmr, bool filter=false)
Serialize a Group.
top level DAP object to house generic methods