casa
$Rev:20696$
|
Abstract base class with functions to convert any format. More...
#include <DataConversion.h>
Public Member Functions | |
DataConversion () | |
Construct the object. | |
virtual | ~DataConversion () |
virtual unsigned int | toLocal (char &to, const void *from) const =0 |
Convert one value from foreign format to local format. | |
virtual unsigned int | toLocal (unsigned char &to, const void *from) const =0 |
virtual unsigned int | toLocal (short &to, const void *from) const =0 |
virtual unsigned int | toLocal (unsigned short &to, const void *from) const =0 |
virtual unsigned int | toLocal (int &to, const void *from) const =0 |
virtual unsigned int | toLocal (unsigned int &to, const void *from) const =0 |
virtual unsigned int | toLocal (Int64 &to, const void *from) const =0 |
virtual unsigned int | toLocal (uInt64 &to, const void *from) const =0 |
virtual unsigned int | toLocal (float &to, const void *from) const =0 |
virtual unsigned int | toLocal (double &to, const void *from) const =0 |
virtual unsigned int | toLocal (char *to, const void *from, unsigned int nr) const =0 |
Convert nr values from foreign format to local format. | |
virtual unsigned int | toLocal (unsigned char *to, const void *from, unsigned int nr) const =0 |
virtual unsigned int | toLocal (short *to, const void *from, unsigned int nr) const =0 |
virtual unsigned int | toLocal (unsigned short *to, const void *from, unsigned int nr) const =0 |
virtual unsigned int | toLocal (int *to, const void *from, unsigned int nr) const =0 |
virtual unsigned int | toLocal (unsigned int *to, const void *from, unsigned int nr) const =0 |
virtual unsigned int | toLocal (Int64 *to, const void *from, unsigned int nr) const =0 |
virtual unsigned int | toLocal (uInt64 *to, const void *from, unsigned int nr) const =0 |
virtual unsigned int | toLocal (float *to, const void *from, unsigned int nr) const =0 |
virtual unsigned int | toLocal (double *to, const void *from, unsigned int nr) const =0 |
virtual unsigned int | fromLocal (void *to, char from) const =0 |
Convert one value from local format to foreign format. | |
virtual unsigned int | fromLocal (void *to, unsigned char from) const =0 |
virtual unsigned int | fromLocal (void *to, short from) const =0 |
virtual unsigned int | fromLocal (void *to, unsigned short from) const =0 |
virtual unsigned int | fromLocal (void *to, int from) const =0 |
virtual unsigned int | fromLocal (void *to, unsigned int from) const =0 |
virtual unsigned int | fromLocal (void *to, Int64 from) const =0 |
virtual unsigned int | fromLocal (void *to, uInt64 from) const =0 |
virtual unsigned int | fromLocal (void *to, float from) const =0 |
virtual unsigned int | fromLocal (void *to, double from) const =0 |
virtual unsigned int | fromLocal (void *to, const char *from, unsigned int nr) const =0 |
Convert nr values from local format to foreign format. | |
virtual unsigned int | fromLocal (void *to, const unsigned char *from, unsigned int nr) const =0 |
virtual unsigned int | fromLocal (void *to, const short *from, unsigned int nr) const =0 |
virtual unsigned int | fromLocal (void *to, const unsigned short *from, unsigned int nr) const =0 |
virtual unsigned int | fromLocal (void *to, const int *from, unsigned int nr) const =0 |
virtual unsigned int | fromLocal (void *to, const unsigned int *from, unsigned int nr) const =0 |
virtual unsigned int | fromLocal (void *to, const Int64 *from, unsigned int nr) const =0 |
virtual unsigned int | fromLocal (void *to, const uInt64 *from, unsigned int nr) const =0 |
virtual unsigned int | fromLocal (void *to, const float *from, unsigned int nr) const =0 |
virtual unsigned int | fromLocal (void *to, const double *from, unsigned int nr) const =0 |
virtual Bool | canCopy (const char *) const =0 |
Determine if the data for a data type can be simply copied, thus if no conversion is needed. | |
virtual Bool | canCopy (const unsigned char *) const =0 |
virtual Bool | canCopy (const short *) const =0 |
virtual Bool | canCopy (const unsigned short *) const =0 |
virtual Bool | canCopy (const int *) const =0 |
virtual Bool | canCopy (const unsigned int *) const =0 |
virtual Bool | canCopy (const Int64 *) const =0 |
virtual Bool | canCopy (const uInt64 *) const =0 |
virtual Bool | canCopy (const float *) const =0 |
virtual Bool | canCopy (const double *) const =0 |
virtual unsigned int | externalSize (const char *) const =0 |
Get the external size of the data type. | |
virtual unsigned int | externalSize (const unsigned char *) const =0 |
virtual unsigned int | externalSize (const short *) const =0 |
virtual unsigned int | externalSize (const unsigned short *) const =0 |
virtual unsigned int | externalSize (const int *) const =0 |
virtual unsigned int | externalSize (const unsigned int *) const =0 |
virtual unsigned int | externalSize (const Int64 *) const =0 |
virtual unsigned int | externalSize (const uInt64 *) const =0 |
virtual unsigned int | externalSize (const float *) const =0 |
virtual unsigned int | externalSize (const double *) const =0 |
Abstract base class with functions to convert any format.
Public interface
This abstract base class contains pure virtual functions to convert from any foreign data format to local format and vice-versa. Classes derived from it implement the functions for a specific foreign format (e.g.
CanonicalDataConversion , VAXDataConversion , IBMDataConversion ). RawDataConversion ).
// Construct the correct conversion object. DataConversion* conv = new IBMDataConversion(); // Say that you read a block of 256 floats (in IBM-format). char buffer[1024]; read (fd, buffer, 1024); // Convert the float to local format. float values[256]; conv->toLocal (values, buffer, 256);
The abstract base class allows one to construct the correct conversion object at the beginning. Thereafter this base class can be used and polymorphism takes care of picking the correct functions.
Definition at line 82 of file DataConversion.h.
casa::DataConversion::DataConversion | ( | ) | [inline] |
Construct the object.
Definition at line 227 of file DataConversion.h.
virtual casa::DataConversion::~DataConversion | ( | ) | [virtual] |
virtual Bool casa::DataConversion::canCopy | ( | const char * | ) | const [pure virtual] |
Determine if the data for a data type can be simply copied, thus if no conversion is needed.
Implemented in casa::IBMDataConversion, casa::CanonicalDataConversion, casa::LECanonicalDataConversion, casa::RawDataConversion, casa::VAXDataConversion, and casa::ModcompDataConversion.
virtual Bool casa::DataConversion::canCopy | ( | const unsigned char * | ) | const [pure virtual] |
virtual Bool casa::DataConversion::canCopy | ( | const short * | ) | const [pure virtual] |
virtual Bool casa::DataConversion::canCopy | ( | const unsigned short * | ) | const [pure virtual] |
virtual Bool casa::DataConversion::canCopy | ( | const int * | ) | const [pure virtual] |
virtual Bool casa::DataConversion::canCopy | ( | const unsigned int * | ) | const [pure virtual] |
virtual Bool casa::DataConversion::canCopy | ( | const Int64 * | ) | const [pure virtual] |
virtual Bool casa::DataConversion::canCopy | ( | const uInt64 * | ) | const [pure virtual] |
virtual Bool casa::DataConversion::canCopy | ( | const float * | ) | const [pure virtual] |
virtual Bool casa::DataConversion::canCopy | ( | const double * | ) | const [pure virtual] |
virtual unsigned int casa::DataConversion::externalSize | ( | const char * | ) | const [pure virtual] |
Get the external size of the data type.
Implemented in casa::IBMDataConversion, casa::RawDataConversion, casa::CanonicalDataConversion, casa::LECanonicalDataConversion, casa::VAXDataConversion, and casa::ModcompDataConversion.
virtual unsigned int casa::DataConversion::externalSize | ( | const unsigned char * | ) | const [pure virtual] |
virtual unsigned int casa::DataConversion::externalSize | ( | const short * | ) | const [pure virtual] |
virtual unsigned int casa::DataConversion::externalSize | ( | const unsigned short * | ) | const [pure virtual] |
virtual unsigned int casa::DataConversion::externalSize | ( | const int * | ) | const [pure virtual] |
virtual unsigned int casa::DataConversion::externalSize | ( | const unsigned int * | ) | const [pure virtual] |
virtual unsigned int casa::DataConversion::externalSize | ( | const Int64 * | ) | const [pure virtual] |
virtual unsigned int casa::DataConversion::externalSize | ( | const uInt64 * | ) | const [pure virtual] |
virtual unsigned int casa::DataConversion::externalSize | ( | const float * | ) | const [pure virtual] |
virtual unsigned int casa::DataConversion::externalSize | ( | const double * | ) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
char | from | ||
) | const [pure virtual] |
Convert one value from local format to foreign format.
The from and to buffer should not overlap.
Note: The char version handles characters (thus may involve conversion ASCII to EBCDIC), while the unsigned chars are simply bytes;
Implemented in casa::IBMDataConversion, casa::CanonicalDataConversion, casa::LECanonicalDataConversion, casa::RawDataConversion, casa::VAXDataConversion, and casa::ModcompDataConversion.
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
unsigned char | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
short | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
unsigned short | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
int | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
unsigned int | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
Int64 | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
uInt64 | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
float | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
double | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
const char * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
Convert nr values from local format to foreign format.
The from and to buffer should not overlap.
Note: The char version handles characters (thus may involve conversion ASCII to EBCDIC), while the unsigned chars are simply bytes;
Implemented in casa::IBMDataConversion, casa::CanonicalDataConversion, casa::LECanonicalDataConversion, casa::RawDataConversion, casa::VAXDataConversion, and casa::ModcompDataConversion.
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
const unsigned char * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
const short * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
const unsigned short * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
const int * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
const unsigned int * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
const Int64 * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
const uInt64 * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
const float * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::fromLocal | ( | void * | to, |
const double * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | char & | to, |
const void * | from | ||
) | const [pure virtual] |
Convert one value from foreign format to local format.
The from and to buffer should not overlap.
Note: The char version handles characters (thus may involve conversion EBCDIC to ASCII), while the unsigned chars are simply bytes;
Implemented in casa::IBMDataConversion, casa::CanonicalDataConversion, casa::LECanonicalDataConversion, casa::RawDataConversion, casa::VAXDataConversion, and casa::ModcompDataConversion.
virtual unsigned int casa::DataConversion::toLocal | ( | unsigned char & | to, |
const void * | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | short & | to, |
const void * | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | unsigned short & | to, |
const void * | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | int & | to, |
const void * | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | unsigned int & | to, |
const void * | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | Int64 & | to, |
const void * | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | uInt64 & | to, |
const void * | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | float & | to, |
const void * | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | double & | to, |
const void * | from | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | char * | to, |
const void * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
Convert nr values from foreign format to local format.
The from and to buffer should not overlap.
Note: The char version handles characters (thus may involve conversion EBCDIC to ASCII), while the unsigned chars are simply bytes;
Implemented in casa::IBMDataConversion, casa::CanonicalDataConversion, casa::LECanonicalDataConversion, casa::RawDataConversion, casa::VAXDataConversion, and casa::ModcompDataConversion.
virtual unsigned int casa::DataConversion::toLocal | ( | unsigned char * | to, |
const void * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | short * | to, |
const void * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | unsigned short * | to, |
const void * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | int * | to, |
const void * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | unsigned int * | to, |
const void * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | Int64 * | to, |
const void * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | uInt64 * | to, |
const void * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | float * | to, |
const void * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |
virtual unsigned int casa::DataConversion::toLocal | ( | double * | to, |
const void * | from, | ||
unsigned int | nr | ||
) | const [pure virtual] |