libdap
Updated for version 3.19.1
libdap4 is an implementation of OPeNDAP's DAP protocol.
|
55 #include "Marshaller.h"
56 #include "UnMarshaller.h"
59 #include "D4StreamMarshaller.h"
60 #include "D4StreamUnMarshaller.h"
64 #include "Operators.h"
65 #include "dods-limits.h"
67 #include "InternalErr.h"
94 d_buf = copy_from.d_buf;
104 UInt32::operator=(
const UInt32 &rhs)
109 dynamic_cast<BaseType &
>(*this) = rhs;
119 return sizeof(dods_uint32);
125 #if USE_LOCAL_TIMEOUT_SCHEME
133 #if USE_LOCAL_TIMEOUT_SCHEME
136 m.put_uint32( d_buf ) ;
144 um.get_uint32( d_buf ) ;
152 checksum.
AddData(
reinterpret_cast<uint8_t*
>(&d_buf),
sizeof(d_buf));
169 m.put_uint32( d_buf ) ;
175 um.get_uint32( d_buf ) ;
188 "The incoming pointer does not contain any data.");
190 d_buf = *(dods_uint32 *)val;
201 throw InternalErr(__FILE__, __LINE__,
"NULL pointer.");
204 *val =
new dods_uint32;
206 *(dods_uint32 *)*val = d_buf;
212 UInt32::value()
const
218 UInt32::set_value(dods_uint32 i)
231 fwrite(oss.str().data(),
sizeof(
char), oss.str().length(), out);
239 out <<
" = " << (
unsigned int)d_buf <<
";\n" ;
242 out << (
unsigned int)d_buf ;
255 throw InternalErr(__FILE__, __LINE__,
"This value was not read!");
265 throw InternalErr(__FILE__, __LINE__,
"This value was not read!");
270 return USCmp<dods_uint32, dods_int8>(op, d_buf,
static_cast<Int8*
>(b)->value());
272 return Cmp<dods_uint32, dods_byte>(op, d_buf,
static_cast<Byte*
>(b)->value());
274 return USCmp<dods_uint32, dods_int16>(op, d_buf,
static_cast<Int16*
>(b)->value());
276 return Cmp<dods_uint32, dods_uint16>(op, d_buf,
static_cast<UInt16*
>(b)->value());
278 return USCmp<dods_uint32, dods_int32>(op, d_buf,
static_cast<Int32*
>(b)->value());
280 return Cmp<dods_uint32, dods_uint32>(op, d_buf,
static_cast<UInt32*
>(b)->value());
282 return USCmp<dods_uint32, dods_int64>(op, d_buf,
static_cast<Int64*
>(b)->value());
284 return Cmp<dods_uint32, dods_uint64>(op, d_buf,
static_cast<UInt64*
>(b)->value());
286 return USCmp<dods_uint32, dods_float32>(op, d_buf,
static_cast<Float32*
>(b)->value());
288 return USCmp<dods_uint32, dods_float64>(op, d_buf,
static_cast<Float64*
>(b)->value());
305 strm << DapIndent::LMarg <<
"UInt32::dump - ("
306 << (
void *)
this <<
")" << endl ;
307 DapIndent::Indent() ;
309 strm << DapIndent::LMarg <<
"value: " << d_buf << endl ;
310 DapIndent::UnIndent() ;
Evaluate a constraint expression.
Holds a 64-bit unsigned integer.
virtual void print_val(FILE *out, string space="", bool print_decl_p=true)
Prints the value of the variable.
abstract base class used to unmarshall/deserialize dap data objects
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 print_decl(FILE *out, string space=" ", bool print_semi=true, bool constraint_info=false, bool constrained=false)
Print an ASCII representation of the variable structure.
virtual unsigned int val2buf(void *val, bool reuse=false)
Loads class data.
A class for software fault reporting.
abstract base class used to marshal/serialize dap data objects
virtual bool deserialize(UnMarshaller &um, DDS *dds, bool reuse=false)
Receive data from the net.
Holds a 16-bit signed integer value.
Holds a 32-bit unsigned integer.
Holds an 8-bit signed integer value.
Holds a 32-bit floating point value.
virtual void dump(ostream &strm) const
dumps information about this object
virtual string dataset() const
Returns the name of the dataset used to create this instance.
Read data from the stream made by D4StreamMarshaller.
virtual bool ops(BaseType *b, int op)
Evaluate relational operators.
virtual bool read_p()
Has this variable been read?
virtual unsigned int buf2val(void **val)
Reads the class data.
Holds an unsigned 16-bit integer.
virtual Type type() const
Returns the type of the class instance.
virtual void dump(ostream &strm) const
dumps information about this object
bool eval_selection(DDS &dds, const std::string &dataset)
Evaluate a boolean-valued constraint expression. This is main method for the evaluator and is called ...
virtual BaseType * ptr_duplicate()
virtual void set_read_p(bool state)
Sets the value of the read_p property.
void AddData(const uint8_t *pData, const uint32_t length)
virtual bool read()
Read data into a local buffer.
Holds a 32-bit signed integer.
Holds a64-bit signed integer.
The basic data type for the DODS DAP types.
Holds a 64-bit (double precision) floating point value.
virtual void compute_checksum(Crc32 &checksum)
include the data for this variable in the checksum DAP4 includes a checksum with every data response....
virtual unsigned int width(bool constrained=false) const
How many bytes does this use Return the number of bytes of storage this variable uses....
Marshaller that knows how to marshal/serialize dap data objects to a C++ iostream using DAP4's receiv...