29#ifndef _dods_datatypes_h
30#include "dods-datatypes.h"
37#ifndef constraint_evaluator_h
38#include "ConstraintEvaluator.h"
48 unsigned int val2buf(
void *val,
bool)
override {
49 set_value(*
reinterpret_cast<dods_uint64 *
>(val));
50 return sizeof(dods_uint64);
53 unsigned int buf2val(
void **)
override;
54 void print_val(FILE *,
string,
bool)
override {
55 throw InternalErr(__FILE__, __LINE__,
"Not implemented for UInt64");
63 UInt64(
const string &n,
const string &d);
72 unsigned int width(
bool =
false)
const override {
return sizeof(dods_uint64); }
74 int64_t width_ll(
bool =
false)
const override {
return sizeof(dods_uint64); }
78 void serialize(D4StreamMarshaller &m, DMR &dmr,
bool filter =
false)
override;
79 void deserialize(D4StreamUnMarshaller &um, DMR &dmr)
override;
81 virtual dods_uint64 value()
const;
82 virtual bool set_value(dods_uint64 val);
84 void print_val(ostream &out,
string space =
"",
bool print_decl_p =
true)
override;
88 std::vector<BaseType *> *
transform_to_dap2(AttrTable *parent_attr_table)
override;
92 void dump(ostream &strm)
const override;
BaseType(const string &n, const Type &t, bool is_dap4=false)
The BaseType constructor.
A class for software fault reporting.
bool ops(BaseType *b, int op) override
Evaluate relational operators.
void serialize(D4StreamMarshaller &m, DMR &dmr, bool filter=false) override
Serialize an Int8.
unsigned int width(bool=false) const override
How many bytes does this variable use Return the number of bytes of storage this variable uses....
BaseType * ptr_duplicate() override
bool d4_ops(BaseType *b, int op) override
Evaluator a relop for DAP4.
void deserialize(D4StreamUnMarshaller &um, DMR &dmr) override
void dump(ostream &strm) const override
dumps information about this object
std::vector< BaseType * > * transform_to_dap2(AttrTable *parent_attr_table) override
DAP4 to DAP2 transform.
void compute_checksum(Crc32 &checksum) override
include the data for this variable in the checksum DAP4 includes a checksum with every data response....
bool is_dap4_projected(std::vector< string > &inventory) override
top level DAP object to house generic methods