26 #ifndef _constructor_h
27 #define _constructor_h 1
40 class D4StreamUnMarshaller;
49 std::vector<BaseType *> d_vars;
52 BaseType *m_leaf_match(
const string &
name, btp_stack *s = 0);
53 BaseType *m_exact_match(
const string &
name, btp_stack *s = 0);
61 typedef std::vector<BaseType *>::const_iterator Vars_citer ;
62 typedef std::vector<BaseType *>::iterator Vars_iter ;
63 typedef std::vector<BaseType *>::reverse_iterator Vars_riter ;
70 virtual std::string
FQN()
const;
77 virtual unsigned int width(
bool constrained =
false)
const;
79 virtual unsigned int width(
bool constrained);
84 virtual BaseType *
var(
const string &
name,
bool exact_match =
true, btp_stack *s = 0);
86 virtual BaseType *
var(
const string &n, btp_stack &s);
99 virtual void del_var(Vars_iter i);
116 throw InternalErr(__FILE__, __LINE__,
"Never use this method; see the programmer's guide documentation.");
119 throw InternalErr(__FILE__, __LINE__,
"Never use this method; see the programmer's guide documentation.");
125 virtual void print_decl(ostream &out,
string space =
" ",
126 bool print_semi =
true,
127 bool constraint_info =
false,
128 bool constrained =
false);
130 virtual void print_xml(ostream &out,
string space =
" ",
131 bool constrained =
false);
137 virtual void print_decl(FILE *out,
string space =
" ",
138 bool print_semi =
true,
139 bool constraint_info =
false,
140 bool constrained =
false);
141 virtual void print_xml(FILE *out,
string space =
" ",
142 bool constrained =
false);
144 virtual void print_val(FILE *out,
string space =
"",
145 bool print_decl_p =
true);
146 virtual void print_val(ostream &out,
string space =
"",
147 bool print_decl_p =
true);
152 static AttrTable *make_dropped_vars_attr_table(vector<BaseType *> *dropped_vars);
154 virtual void dump(ostream &strm)
const ;
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 Type type() const
Returns the type of the class instance.
Evaluate a constraint expression.
virtual unsigned int width(bool constrained=false) const
void print_dap4(XMLWriter &xml, bool constrained=false)
virtual int element_count(bool leaves=false)
Count the members of constructor types.
Vars_iter get_vars_iter(int i)
virtual void add_var(BaseType *bt, Part part=nil)
virtual void compute_checksum(Crc32 &checksum)
include the data for this variable in the checksum DAP4 includes a checksum with every data response....
virtual void print_xml(ostream &out, string space=" ", bool constrained=false)
virtual BaseType * var(const string &name, bool exact_match=true, btp_stack *s=0)
btp_stack no longer needed; use back pointers (BaseType::get_parent())
virtual void transform_to_dap4(D4Group *root, Constructor *dest)
DAP2 to DAP4 transform.
virtual bool deserialize(UnMarshaller &um, DDS *dds, bool reuse=false)
Receive data from the net.
virtual bool serialize(ConstraintEvaluator &eval, DDS &dds, Marshaller &m, bool ce_eval=true)
Move data to the net, then remove them from the object.
virtual void transfer_attributes(AttrTable *at)
virtual void intern_data()
Read data into this variable.
virtual void dump(ostream &strm) const
dumps information about this object
virtual void print_val(FILE *out, string space="", bool print_decl_p=true)
Prints the value of the variable.
virtual void set_send_p(bool state)
virtual void print_xml_writer(XMLWriter &xml, bool constrained=false)
virtual void print_decl(ostream &out, string space=" ", bool print_semi=true, bool constraint_info=false, bool constrained=false)
Print an ASCII representation of the variable structure.
virtual void add_var_nocopy(BaseType *bt, Part part=nil)
BaseType * get_var_index(int i)
virtual void set_in_selection(bool state)
Set the in_selection property.
virtual unsigned int buf2val(void **)
Reads the class data.
virtual unsigned int val2buf(void *, bool)
Loads class data.
virtual bool read()
simple implementation of read that iterates through vars and calls read on them
virtual bool is_linear()
Check to see whether this variable can be printed simply.
virtual void del_var(const string &name)
virtual void set_read_p(bool state)
Sets the value of the read_p property.
virtual std::string FQN() const
virtual bool check_semantics(string &msg, bool all=false)
Compare an object's current state with the semantics of its type.
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.
A class for software fault reporting.
abstract base class used to marshal/serialize dap data objects
abstract base class used to unmarshall/deserialize dap data objects
top level DAP object to house generic methods
Type
Identifies the data type.
Part
Names the parts of multi-section constructor data types.