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>
191#define DEFINE_WHATTYPE(SPECIALIZED_TYPE, RETURN_TYPE) \
193 inline DataType whatType<SPECIALIZED_TYPE>() { \
194 return RETURN_TYPE; \
229#undef DEFINE_WHATTYPE
#define DEFINE_WHATTYPE(SPECIALIZED_TYPE, RETURN_TYPE)
String: the storage and methods of handling collections of characters.
For temporary backward namespace compatibility, use casa as alias for casacore.
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)