41#include "dods-limits.h"
54const unsigned int max_str_len = DODS_USHRT_MAX - 1;
69 Str(
const string &n,
const string &d);
76 Str &operator=(
const Str &rhs);
80 virtual unsigned int width(
bool constrained =
false)
const;
84 virtual int length()
const;
95 virtual unsigned int val2buf(
void *val,
bool reuse =
false);
96 virtual unsigned int buf2val(
void **val);
99 virtual string value()
const;
101 virtual void print_val(FILE *out,
string space =
"",
102 bool print_decl_p =
true);
103 virtual void print_val(ostream &out,
string space =
"",
104 bool print_decl_p =
true);
109 virtual void dump(ostream &strm)
const ;
The basic data type for the DODS DAP types.
Evaluate a constraint expression.
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.
abstract base class used to marshal/serialize dap data objects
Holds character string data.
virtual bool d4_ops(BaseType *b, int op)
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 bool deserialize(UnMarshaller &um, DDS *dds, bool reuse=false)
Receive data from the net.
virtual void print_val(FILE *out, string space="", bool print_decl_p=true)
Prints the value of the variable.
virtual BaseType * ptr_duplicate()
virtual bool ops(BaseType *b, int op)
Evaluate relational operators.
virtual int length() const
How many elements are in this variable.
virtual unsigned int width(bool constrained=false) const
How many bytes does this variable use Return the number of bytes of storage this variable uses....
virtual string value() const
virtual void dump(ostream &strm) const
dumps information about this object
virtual unsigned int buf2val(void **val)
virtual bool set_value(const string &value)
virtual unsigned int val2buf(void *val, bool reuse=false)
virtual void compute_checksum(Crc32 &checksum)
include the data for this variable in the checksum DAP4 includes a checksum with every data response....
abstract base class used to unmarshall/deserialize dap data objects
top level DAP object to house generic methods