60 vector<D4Group *> d_groups;
91 std::string
FQN()
const override;
113 const vector<D4Group *> &
groups()
const {
return d_groups; }
125 d_groups.push_back(g);
129 d_groups.insert(i, g);
149 void print_decl(ostream &out,
string space =
" ",
bool print_semi =
true,
bool constraint_info =
false,
150 bool constrained =
false)
override;
151 void print_decl(FILE *out,
string space =
" ",
bool print_semi =
true,
bool constraint_info =
false,
152 bool constrained =
false)
override;
154 void print_val(FILE *out,
string space =
"",
bool print_decl_p =
true)
override;
155 void print_val(ostream &out,
string space =
"",
bool print_decl_p =
true)
override;
A multidimensional array of identical data types.
Contains the attributes for a dataset.
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.
virtual void set_parent(BaseType *parent)
Constructor(const string &name, const Type &type, bool is_dap4=false)
void set_parent(D4Group *p)
void print_dap4(XMLWriter &xml, bool constrained=false) override
D4Dimension * find_dim(const string &path)
Find the dimension using a path. Using the DAP4 name syntax, lookup a dimension. The dimension must b...
void print_val(FILE *out, string space="", bool print_decl_p=true) override
Prints the value of the variable.
bool is_dap4_projected(std::vector< std::string > &inventory) override
D4EnumDef * find_enum_def(const string &path)
Array * find_map_source(const string &path)
Given a path to an Array that is also a Map, get that Array.
void add_group_nocopy(D4Group *g)
BaseType * find_var(const string &name)
void insert_group_nocopy(D4Group *g, groupsIter i)
groupsIter grp_begin()
Get an iterator to the start of the values.
void intern_data() override
Read data into this variable.
D4Group * find_child_grp(const string &grp_name)
void serialize(D4StreamMarshaller &m, DMR &dmr, bool filter=false) override
Serialize a Group.
BaseType * find_first_var_that_uses_enumeration(D4EnumDef *enum_def)
uint64_t request_size_kb(bool constrained)
Get the estimated size of a response in kilobytes.
groupsIter grp_end()
Get an iterator to the end of the values.
D4Dimensions * dims()
Get the dimensions defined for this Group.
void set_send_p(bool state) override
BaseType * ptr_duplicate() override
void m_duplicate(const D4Group &g)
vector< D4Group * >::const_iterator groupsCIter
void set_read_p(bool state) override
Set the 'read_p' property for the Constructor and its members.
void print_decl(ostream &out, string space=" ", bool print_semi=true, bool constraint_info=false, bool constrained=false) override
Print an ASCII representation of the variable structure.
D4Group & operator=(const D4Group &rhs)
const vector< D4Group * > & groups() const
D4EnumDefs * enum_defs()
Get the enumerations defined for this Group.
long request_size(bool constrained)
D4Group(const string &name)
std::vector< BaseType * > * transform_to_dap2(AttrTable *parent_attr_table) override
Transform the D4Group's variables to DAP2 variables.
std::string FQN() const override
void deserialize(D4StreamUnMarshaller &um, DMR &dmr) override
BaseType * find_first_var_that_uses_dimension(D4Dimension *dim)
void add_group(const D4Group *g)
vector< D4Group * >::iterator groupsIter
Marshaller that knows how to marshal/serialize dap data objects to a C++ iostream using DAP4's receiv...
Read data from the stream made by D4StreamMarshaller.
top level DAP object to house generic methods