29#ifndef _dods_datatypes_h
30#include "dods-datatypes.h"
49 unsigned int val2buf(
void *val,
bool)
override {
54 unsigned int buf2val(
void **)
override;
55 void print_val(FILE *,
string,
bool)
override {
56 throw InternalErr(__FILE__, __LINE__,
"Not implemented for Int64");
63 Int64(
const string &n);
64 Int64(
const string &n,
const string &d);
86 void print_val(ostream &out,
string space =
"",
bool print_decl_p =
true)
override;
94 void dump(ostream &strm)
const override;
Contains the attributes for a dataset.
The basic data type for the DODS DAP types.
BaseType(const string &n, const Type &t, bool is_dap4=false)
The BaseType constructor.
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.
BaseType * ptr_duplicate() override
Int64 & operator=(const Int64 &rhs)
virtual bool set_value(dods_int64 i)
unsigned int width(bool=false) const override
How many bytes does this variable use Return the number of bytes of storage this variable uses....
bool d4_ops(BaseType *b, int op) override
void deserialize(D4StreamUnMarshaller &um, DMR &dmr) override
int64_t width_ll(bool=false) const override
bool ops(BaseType *b, int op) override
Evaluate relational operators.
void serialize(D4StreamMarshaller &m, DMR &dmr, bool filter=false) override
Serialize an Int8.
bool is_dap4_projected(std::vector< string > &inventory) override
void dump(ostream &strm) const override
dumps information about this object
virtual dods_int64 value() const
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....
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