26#ifndef CASA_DATATYPE_H
27#define CASA_DATATYPE_H
29#include <casacore/casa/aips.h>
30#include <casacore/casa/Arrays/ArrayFwd.h>
31#include <casacore/casa/BasicSL/Complex.h>
32#include <casacore/casa/BasicSL/String.h>
34#include <casacore/casa/iosfwd.h>
169#define DEFINE_WHATTYPE(SPECIALIZED_TYPE, RETURN_TYPE) \
170 template<> inline DataType whatType<SPECIALIZED_TYPE>() { return RETURN_TYPE; }
204#undef DEFINE_WHATTYPE
#define DEFINE_WHATTYPE(SPECIALIZED_TYPE, RETURN_TYPE)
String: the storage and methods of handling collections of characters.
this file contains all the compiler specific defines
long long Int64
Define the extra non-standard types used by Casacore (like proposed uSize, Size).
bool Bool
Define the standard types used by Casacore.
Bool isScalar(DataType type)
It is occasionally useful to discover whether or not a DataType represents an array or scalar value.
ostream & operator<<(ostream &os, DataType type)
Write a formated representation (e.g., Type=Bool) of the given data type.
Bool isComplex(DataType type)
Returns True for Complex or DComplex scalar or array types.
Bool isReal(DataType type)
It is sometimes useful to discover if a DataType represents a real numeric value (i....
DataType asScalar(DataType type)
It is sometimes useful to discover what the corresponding scalar (or array) type is for a given array...
constexpr size_t SizeOfType(DataType dtype)
Returns the number of bytes that this type takes when serialized to disk.
Bool isScalarFun(DataType type)
Bool isNumeric(DataType type)
Returns True if the type is either Real or Complex/DComplex.
Bool isArray(DataType type)
DataType whatType()
These (specialized) functions return the DataType that corresponds to the template type.
@ TpNumberOfTypes
Since we start at zero, this is the number of types in the enum.
DataType asArray(DataType type)