28 #ifndef CASA_VALTYPE_H 29 #define CASA_VALTYPE_H 33 #include <casacore/casa/aips.h> 34 #include <casacore/casa/Utilities/DataType.h> 35 #include <casacore/casa/BasicSL/String.h> 36 #include <casacore/casa/BasicSL/Complex.h> 37 #include <casacore/casa/Utilities/Compare.h> 38 #include <casacore/casa/Utilities/CountedPtr.h> 39 #include <casacore/casa/OS/Conversion.h> 40 #include <casacore/casa/IO/AipsIO.h> 41 #include <casacore/casa/iosfwd.h> 131 static DataType
getType (
const float*);
132 static DataType
getType (
const double*);
137 static DataType
getType (
const void*);
178 uInt& nrElementsPerValue,
203 static void put (
AipsIO&,
const double*);
222 static void get (
AipsIO&,
float*);
223 static void get (
AipsIO&,
double*);
227 static void get (
AipsIO&,
void*);
234 static void put (ostream&,
const Bool*);
235 static void put (ostream&,
const Char*);
236 static void put (ostream&,
const uChar*);
237 static void put (ostream&,
const Short*);
238 static void put (ostream&,
const uShort*);
239 static void put (ostream&,
const Int*);
240 static void put (ostream&,
const uInt*);
241 static void put (ostream&,
const Int64*);
242 static void put (ostream&,
const float*);
243 static void put (ostream&,
const double*);
246 static void put (ostream&,
const String*);
247 static void put (ostream&,
const void*);
263 static int isDefined (
const float* value,
const float* undef);
264 static int isDefined (
const double* value,
const double* undef);
268 static int isDefined (
const void* value,
const void* undef);
519 {
return *value != *undef;}
521 {
return *value != *undef;}
523 {
return *value != *undef;}
525 {
return *value != *undef;}
527 {
return *value != *undef;}
529 {
return *value != *undef;}
531 {
return *value != *undef;}
533 {
return *value != *undef;}
535 {
return *value != *undef;}
537 {
return *value != *undef;}
539 {
return *value != *undef;}
541 {
return *value != *undef;}
543 {
return *value != *undef;}
static const String & getTypeStr(DataType)
Get the name of the data type.
static const Int64 undefint64
long long Int64
Define the extra non-standard types used by Casacore (like proposed uSize, Size)
static DComplex undefDComplex()
static const Int undefint
static int getTypeSize(DataType)
Get the size of data type (in local format).
std::complex< Float > Complex
static const String strbool
static double undefDouble()
AipsIO is the object persistency mechanism of Casacore.
static const String strchar
static const double undefdouble
static int isDefined(const Bool *value, const Bool *undef)
Check if a value is defined, i.e.
static const Complex undefcomplex
static const String struint
static const Short undefshort
ValType()
This class is not meant to be constructed.
static const String strother
static const String strunknown
static const DComplex undefdcomplex
static const String strshort
static const String strint
Data types and their undefined values.
static uShort undefUShort()
static Bool isPromotable(DataType from, DataType to)
Test if a data type can be promoted to another.
static const String strfloat
static const float undeffloat
static Short undefShort()
static const String struchar
static const uInt undefuint
static const String undefstring
Referenced counted pointer for constant data.
static void get(AipsIO &, Bool *)
Get the value from AipsIO.
static ObjCompareFunc * getCmpFunc(DataType)
Get the pointer to the routine which compares two values.
static Int64 undefInt64()
std::complex< Double > DComplex
static const String strushort
static DataType getType(const Bool *)
Get the data type code for this type as the function's return value.
static const String strdcomplex
static const String strstring
bool Bool
Define the standard types used by Casacore.
static const Char undefchar
static const String strcomplex
static const String strtable
static const uChar undefuchar
static void put(AipsIO &, const Bool *)
Put the value into AipsIO.
static float undefFloat()
static void getUndef(Bool *)
Get the "undefined value" for this data type in the argument.
A hierarchical collection of named fields of various types.
static const String strdouble
static const String strrecord
static String undefString()
static const String strint64
static void getCanonicalFunc(DataType dt, Conversion::ValueFunction *&readFunc, Conversion::ValueFunction *&writeFunc, uInt &nrElementsPerValue, Bool BECanonical=True)
Get the functions to convert to/from canonical format.
String: the storage and methods of handling collections of characters.
static CountedPtr< BaseCompare > getCmpObj(DataType)
Get the object which compares two values.
static Complex undefComplex()
static int getCanonicalSize(DataType, Bool BECanonical=True)
Get the size of data type in canonical format.
this file contains all the compiler specific defines
static uChar undefUChar()
LatticeExprNode value(const LatticeExprNode &expr)
This function returns the value of the expression without a mask.
size_t ValueFunction(void *to, const void *from, size_t nvalues)
Define the signature of a function converting nvalues values from internal to external format or vice...
static const uShort undefushort
static Bool undefBool()
Get the "undefined value" for this data type as the function's return value.
static const Bool undefbool