#include <ValType.h>
Collaboration diagram for casa::ValType:

Part of API
Class ValType describes the data types and their "undefined values".
Supported are built-in data types, Bool, String, Complex and DComplex. As a rule, the smallest possible value of a data type is used as its "undefined value"; for String we use the null string, and for Bool the value False.
The class does not contain data. It merely defines constants and has overloaded functions that return in some form the "undefined value", the data type, or certain other information about the data type.
Definition at line 77 of file ValType.h.
Static Public Member Functions | |
| static int | getTypeSize (DataType) |
| Get the size of data type (in local format). | |
| static int | getCanonicalSize (DataType, Bool BECanonical=True) |
| Get the size of data type in canonical format. | |
| 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. | |
| static Bool | isPromotable (DataType from, DataType to) |
| Test if a data type can be promoted to another. | |
| static ObjCompareFunc * | getCmpFunc (DataType) |
| Get the pointer to the routine which compares two values. | |
| static Bool | undefBool () |
| Get the "undefined value" for this data type as the function's return value. | |
| static Char | undefChar () |
| static uChar | undefUChar () |
| static Short | undefShort () |
| static uShort | undefUShort () |
| static Int | undefInt () |
| static uInt | undefUInt () |
| static float | undefFloat () |
| static double | undefDouble () |
| static Complex | undefComplex () |
| static DComplex | undefDComplex () |
| static String | undefString () |
| static void | getUndef (Bool *) |
| Get the "undefined value" for this data type in the argument. | |
| static void | getUndef (Char *) |
| static void | getUndef (uChar *) |
| static void | getUndef (Short *) |
| static void | getUndef (uShort *) |
| static void | getUndef (Int *) |
| static void | getUndef (uInt *) |
| static void | getUndef (float *) |
| static void | getUndef (double *) |
| static void | getUndef (Complex *) |
| static void | getUndef (DComplex *) |
| static void | getUndef (String *) |
| static void | getUndef (void *) |
| static DataType | getType (const Bool *) |
| Get the data type code for this type as the function's return value. | |
| static DataType | getType (const Char *) |
| static DataType | getType (const uChar *) |
| static DataType | getType (const Short *) |
| static DataType | getType (const uShort *) |
| static DataType | getType (const Int *) |
| static DataType | getType (const uInt *) |
| static DataType | getType (const float *) |
| static DataType | getType (const double *) |
| static DataType | getType (const Complex *) |
| static DataType | getType (const DComplex *) |
| static DataType | getType (const String *) |
| static DataType | getType (const TableRecord *) |
| static DataType | getType (const void *) |
| static const String & | getTypeStr (DataType) |
| Get the name of the data type. | |
| static const String & | getTypeStr (const Bool *) |
| static const String & | getTypeStr (const Char *) |
| static const String & | getTypeStr (const uChar *) |
| static const String & | getTypeStr (const Short *) |
| static const String & | getTypeStr (const uShort *) |
| static const String & | getTypeStr (const Int *) |
| static const String & | getTypeStr (const uInt *) |
| static const String & | getTypeStr (const float *) |
| static const String & | getTypeStr (const double *) |
| static const String & | getTypeStr (const Complex *) |
| static const String & | getTypeStr (const DComplex *) |
| static const String & | getTypeStr (const String *) |
| static const String & | getTypeStr (const TableRecord *) |
| static const String & | getTypeStr (const void *) |
| static void | put (AipsIO &, const Bool *) |
Put the value into AipsIO. | |
| static void | put (AipsIO &, const Char *) |
| static void | put (AipsIO &, const uChar *) |
| static void | put (AipsIO &, const Short *) |
| static void | put (AipsIO &, const uShort *) |
| static void | put (AipsIO &, const Int *) |
| static void | put (AipsIO &, const uInt *) |
| static void | put (AipsIO &, const float *) |
| static void | put (AipsIO &, const double *) |
| static void | put (AipsIO &, const Complex *) |
| static void | put (AipsIO &, const DComplex *) |
| static void | put (AipsIO &, const String *) |
| static void | put (AipsIO &, const void *) |
| static void | get (AipsIO &, Bool *) |
Get the value from AipsIO. | |
| static void | get (AipsIO &, Char *) |
| static void | get (AipsIO &, uChar *) |
| static void | get (AipsIO &, Short *) |
| static void | get (AipsIO &, uShort *) |
| static void | get (AipsIO &, Int *) |
| static void | get (AipsIO &, uInt *) |
| static void | get (AipsIO &, float *) |
| static void | get (AipsIO &, double *) |
| static void | get (AipsIO &, Complex *) |
| static void | get (AipsIO &, DComplex *) |
| static void | get (AipsIO &, String *) |
| static void | get (AipsIO &, void *) |
| static void | put (ostream &, const Bool *) |
Put the value into the ostream. | |
| static void | put (ostream &, const Char *) |
| static void | put (ostream &, const uChar *) |
| static void | put (ostream &, const Short *) |
| static void | put (ostream &, const uShort *) |
| static void | put (ostream &, const Int *) |
| static void | put (ostream &, const uInt *) |
| static void | put (ostream &, const float *) |
| static void | put (ostream &, const double *) |
| static void | put (ostream &, const Complex *) |
| static void | put (ostream &, const DComplex *) |
| static void | put (ostream &, const String *) |
| static void | put (ostream &, const void *) |
| static int | isDefined (const Bool *value, const Bool *undef) |
| Check if a value is defined, i.e. | |
| static int | isDefined (const Char *value, const Char *undef) |
| static int | isDefined (const uChar *value, const uChar *undef) |
| static int | isDefined (const Short *value, const Short *undef) |
| static int | isDefined (const uShort *value, const uShort *undef) |
| static int | isDefined (const Int *value, const Int *undef) |
| static int | isDefined (const uInt *value, const uInt *undef) |
| static int | isDefined (const float *value, const float *undef) |
| static int | isDefined (const double *value, const double *undef) |
| static int | isDefined (const Complex *value, const Complex *undef) |
| static int | isDefined (const DComplex *value, const DComplex *undef) |
| static int | isDefined (const String *value, const String *undef) |
| static int | isDefined (const void *value, const void *undef) |
Private Member Functions | |
| ValType () | |
| This class is not meant to be constructed. | |
Static Private Attributes | |
| static const Bool | undefbool |
| static const Char | undefchar |
| static const uChar | undefuchar |
| static const Short | undefshort |
| static const uShort | undefushort |
| static const Int | undefint |
| static const uInt | undefuint |
| static const float | undeffloat |
| static const double | undefdouble |
| static const Complex | undefcomplex |
| static const DComplex | undefdcomplex |
| static const String | undefstring |
| static const String | strbool |
| static const String | strchar |
| static const String | struchar |
| static const String | strshort |
| static const String | strushort |
| static const String | strint |
| static const String | struint |
| static const String | strfloat |
| static const String | strdouble |
| static const String | strcomplex |
| static const String | strdcomplex |
| static const String | strstring |
| static const String | strrecord |
| static const String | strtable |
| static const String | strother |
| static const String | strunknown |
| casa::ValType::ValType | ( | ) | [private] |
This class is not meant to be constructed.
| Bool casa::ValType::undefBool | ( | ) | [inline, static] |
| Char casa::ValType::undefChar | ( | ) | [inline, static] |
| uChar casa::ValType::undefUChar | ( | ) | [inline, static] |
| Short casa::ValType::undefShort | ( | ) | [inline, static] |
| uShort casa::ValType::undefUShort | ( | ) | [inline, static] |
| Int casa::ValType::undefInt | ( | ) | [inline, static] |
| uInt casa::ValType::undefUInt | ( | ) | [inline, static] |
| float casa::ValType::undefFloat | ( | ) | [inline, static] |
| double casa::ValType::undefDouble | ( | ) | [inline, static] |
| Complex casa::ValType::undefComplex | ( | ) | [inline, static] |
| DComplex casa::ValType::undefDComplex | ( | ) | [inline, static] |
| String casa::ValType::undefString | ( | ) | [inline, static] |
| void casa::ValType::getUndef | ( | Bool * | ) | [inline, static] |
| void casa::ValType::getUndef | ( | Char * | ) | [inline, static] |
| void casa::ValType::getUndef | ( | uChar * | ) | [inline, static] |
| void casa::ValType::getUndef | ( | Short * | ) | [inline, static] |
| void casa::ValType::getUndef | ( | uShort * | ) | [inline, static] |
| void casa::ValType::getUndef | ( | Int * | ) | [inline, static] |
| void casa::ValType::getUndef | ( | uInt * | ) | [inline, static] |
| void casa::ValType::getUndef | ( | float * | ) | [inline, static] |
| void casa::ValType::getUndef | ( | double * | ) | [inline, static] |
| void casa::ValType::getUndef | ( | Complex * | ) | [inline, static] |
| void casa::ValType::getUndef | ( | DComplex * | ) | [inline, static] |
| void casa::ValType::getUndef | ( | String * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const Bool * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const Char * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const uChar * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const Short * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const uShort * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const Int * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const uInt * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const float * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const double * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const Complex * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const DComplex * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const String * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const TableRecord * | ) | [inline, static] |
| DataType casa::ValType::getType | ( | const void * | ) | [inline, static] |
| static const String& casa::ValType::getTypeStr | ( | DataType | ) | [static] |
Get the name of the data type.
The void* returns the string "Other ".
Referenced by casa::ValTypeId_global_functions_typeid::valDataTypeId().
| const String & casa::ValType::getTypeStr | ( | const float * | ) | [inline, static] |
| const String & casa::ValType::getTypeStr | ( | const double * | ) | [inline, static] |
| const String & casa::ValType::getTypeStr | ( | const Complex * | ) | [inline, static] |
| const String & casa::ValType::getTypeStr | ( | const DComplex * | ) | [inline, static] |
| const String & casa::ValType::getTypeStr | ( | const TableRecord * | ) | [inline, static] |
| const String & casa::ValType::getTypeStr | ( | const void * | ) | [inline, static] |
| static int casa::ValType::getTypeSize | ( | DataType | ) | [static] |
Get the size of data type (in local format).
Get the size of data type in canonical format.
The argument BECanonical determines if the big-endian or little-endian canonical format is used.
| static void casa::ValType::getCanonicalFunc | ( | DataType | dt, | |
| Conversion::ValueFunction *& | readFunc, | |||
| Conversion::ValueFunction *& | writeFunc, | |||
| uInt & | nrElementsPerValue, | |||
| Bool | BECanonical = True | |||
| ) | [static] |
Get the functions to convert to/from canonical format.
These functions take the number of pixels as the length argument. It returns the number of elements per value; normally this is 1, but for complex values it is 2 (since they convert float/double).
The argument BECanonical determines if the big-endian or little-endian canonical format is used.
| static Bool casa::ValType::isPromotable | ( | DataType | from, | |
| DataType | to | |||
| ) | [static] |
Test if a data type can be promoted to another.
| static ObjCompareFunc* casa::ValType::getCmpFunc | ( | DataType | ) | [static] |
Get the pointer to the routine which compares two values.
| void casa::ValType::put | ( | AipsIO & | , | |
| const float * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | AipsIO & | , | |
| const double * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | AipsIO & | , | |
| const Complex * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | AipsIO & | , | |
| const DComplex * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | AipsIO & | , | |
| const void * | ||||
| ) | [inline, static] |
| void casa::ValType::get | ( | AipsIO & | , | |
| float * | ||||
| ) | [inline, static] |
| void casa::ValType::get | ( | AipsIO & | , | |
| double * | ||||
| ) | [inline, static] |
| void casa::ValType::get | ( | AipsIO & | , | |
| Complex * | ||||
| ) | [inline, static] |
| void casa::ValType::get | ( | AipsIO & | , | |
| DComplex * | ||||
| ) | [inline, static] |
| void casa::ValType::get | ( | AipsIO & | , | |
| void * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | ostream & | , | |
| const Bool * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | ostream & | , | |
| const Char * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | ostream & | , | |
| const uChar * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | ostream & | , | |
| const Short * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | ostream & | , | |
| const uShort * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | ostream & | , | |
| const Int * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | ostream & | , | |
| const uInt * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | ostream & | , | |
| const float * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | ostream & | , | |
| const double * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | ostream & | , | |
| const Complex * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | ostream & | , | |
| const DComplex * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | ostream & | , | |
| const String * | ||||
| ) | [inline, static] |
| void casa::ValType::put | ( | ostream & | , | |
| const void * | ||||
| ) | [inline, static] |
| int casa::ValType::isDefined | ( | const float * | value, | |
| const float * | undef | |||
| ) | [inline, static] |
| int casa::ValType::isDefined | ( | const double * | value, | |
| const double * | undef | |||
| ) | [inline, static] |
| int casa::ValType::isDefined | ( | const Complex * | value, | |
| const Complex * | undef | |||
| ) | [inline, static] |
| int casa::ValType::isDefined | ( | const DComplex * | value, | |
| const DComplex * | undef | |||
| ) | [inline, static] |
| int casa::ValType::isDefined | ( | const void * | value, | |
| const void * | undef | |||
| ) | [inline, static] |
const Bool casa::ValType::undefbool [static, private] |
const Char casa::ValType::undefchar [static, private] |
const uChar casa::ValType::undefuchar [static, private] |
const Short casa::ValType::undefshort [static, private] |
const uShort casa::ValType::undefushort [static, private] |
const Int casa::ValType::undefint [static, private] |
const uInt casa::ValType::undefuint [static, private] |
const float casa::ValType::undeffloat [static, private] |
const double casa::ValType::undefdouble [static, private] |
const Complex casa::ValType::undefcomplex [static, private] |
const DComplex casa::ValType::undefdcomplex [static, private] |
const String casa::ValType::undefstring [static, private] |
const String casa::ValType::strbool [static, private] |
const String casa::ValType::strchar [static, private] |
const String casa::ValType::struchar [static, private] |
const String casa::ValType::strshort [static, private] |
const String casa::ValType::strushort [static, private] |
const String casa::ValType::strint [static, private] |
const String casa::ValType::struint [static, private] |
const String casa::ValType::strfloat [static, private] |
const String casa::ValType::strdouble [static, private] |
const String casa::ValType::strcomplex [static, private] |
const String casa::ValType::strdcomplex [static, private] |
const String casa::ValType::strstring [static, private] |
const String casa::ValType::strrecord [static, private] |
const String casa::ValType::strtable [static, private] |
const String casa::ValType::strother [static, private] |
const String casa::ValType::strunknown [static, private] |
1.5.1