33#include <dods-datatypes.h>
45 std::vector<D4RValue *> d_rvalues;
50 typedef std::vector<D4RValue *>::iterator
iter;
72 unsigned int size()
const {
return d_rvalues.size(); }
91 value_kind d_value_kind;
94 void m_duplicate(
const D4RValue &src);
99 D4RValue() : d_variable(0), d_func(0), d_args(0), d_constant(0), d_value_kind(
unknown) {}
103 : d_variable(0), d_func(f), d_args(args), d_constant(0), d_value_kind(
function) {}
109 D4RValue(std::vector<dods_byte> &byte_args);
110 D4RValue(std::vector<dods_int8> &byte_int8);
111 D4RValue(std::vector<dods_uint16> &byte_uint16);
112 D4RValue(std::vector<dods_int16> &byte_int16);
113 D4RValue(std::vector<dods_uint32> &byte_uint32);
114 D4RValue(std::vector<dods_int32> &byte_int32);
115 D4RValue(std::vector<dods_uint64> &byte_uint64);
116 D4RValue(std::vector<dods_int64> &byte_int64);
117 D4RValue(std::vector<dods_float32> &byte_float32);
118 D4RValue(std::vector<dods_float64> &byte_float64);
The basic data type for the DODS DAP types.
void add_rvalue(D4RValue *rv)
D4RValue * get_rvalue(unsigned int i)
std::vector< D4RValue * >::iterator iter
unsigned int size() const
D4RValueList(D4RValue *rv)
D4RValueList(const D4RValueList &src)
D4RValueList & operator=(const D4RValueList &rhs)
value_kind get_kind() const
What kind of thing holds the value Values in DAP4 constraints are either constants,...
virtual BaseType * value()
Get the value for a RValue object.
friend class D4RValueList
D4RValue(D4Function f, D4RValueList *args)
D4RValue & operator=(D4RValue &rhs)
D4RValue(const D4RValue &src)
top level DAP object to house generic methods
BaseType *(* D4Function)(D4RValueList *, DMR &)
D4RValue * D4RValueFactory(std::string cpps)
Build an appropriate RValue.