| 
|   | Caster () | 
|   | Default constructor. Leaves the type undefined.  
  | 
|   | 
| 
  | Caster (const Caster &c) | 
|   | Copy constructor. Copies the type. 
  | 
|   | 
| 
void  | link (void *p, const std::type_info &t) | 
|   | 
| 
template<class T >  | 
| void  | link (T *p) | 
|   | 
| 
template<class T >  | 
| void  | link (T &p) | 
|   | 
| void  | setType (const std::type_info &t) | 
|   | Calls setType<T>() for which typeid(T) = t.  
  | 
|   | 
| 
template<class F >  | 
| void  | setType () | 
|   | Sets pointers to the type-dependent conversion functions. 
  | 
|   | 
| 
virtual bool  | requestType (const std::type_info &t) | 
|   | Utility for derived classes, which may be able to adapt memory array type as well. 
  | 
|   | 
| 
void  | unsetType () | 
|   | calls void setType<void>(). 
  | 
|   | 
| 
const std::type_info &  | getType () const | 
|   | Returns type_info of the current type. 
  | 
|   | 
| 
bool  | typeIsSet () const | 
|   | 
| 
size_t  | getElementSize () const | 
|   | Returns the size of the base type (size of an element, not of element array). 
  | 
|   | 
| 
template<class T >  | 
| void  | put (void *p, const T &x) const | 
|   | Default conversion (for unconventional types). Uses std::stringstream for conversion. 
  | 
|   | 
| 
template<class T >  | 
| void  | put (const T &x) const | 
|   | Write to internal pointer using put(this->ptr, x). 
  | 
|   | 
| 
void  | put (void *p, const char *x) const | 
|   | 
| 
void  | put (const char *x) const | 
|   | Write to internal pointer, calls put(this->ptr, x). 
  | 
|   | 
| 
template<class T >  | 
| T  | get (const void *p) const | 
|   | Default implementation throws an error. See specialized implementation below. 
  | 
|   | 
| 
template<class T >  | 
| T  | get () const | 
|   | 
| 
void  | translate (const Caster &c, const void *ptrC, void *ptr) const | 
|   | Convert from str pointer and Caster. 
  | 
|   | 
| 
void  | translate (const Caster &c) const | 
|   | Convert from str Caster. 
  | 
|   | 
| 
bool  | compare (const void *ptr, const Caster &c, const void *cPtr) const | 
|   | 
| 
std::istream &  | fromStream (std::istream &istr, const void *p) const | 
|   | 
| 
std::ostream &  | toOStream (std::ostream &ostr, const void *p) const | 
|   | Write data to output stream. 
  | 
|   | 
| 
std::ostream &  | toOStream (std::ostream &ostr) const | 
|   | Write data to output stream. 
  | 
|   | 
| 
template<>  | 
| void  | link (Caster &c) | 
|   | 
| 
template<>  | 
| void  | put (void *p, const bool &x) const | 
|   | 
| 
template<>  | 
| void  | put (void *p, const char &x) const | 
|   | 
| 
template<>  | 
| void  | put (void *p, const unsigned char &x) const | 
|   | 
| 
template<>  | 
| void  | put (void *p, const int &x) const | 
|   | 
| 
template<>  | 
| void  | put (void *p, const unsigned int &x) const | 
|   | 
| 
template<>  | 
| void  | put (void *p, const long &x) const | 
|   | 
| 
template<>  | 
| void  | put (void *p, const unsigned long &x) const | 
|   | 
| 
template<>  | 
| void  | put (void *p, const float &x) const | 
|   | 
| 
template<>  | 
| void  | put (void *p, const double &x) const | 
|   | 
| 
template<>  | 
| bool  | get (const void *p) const | 
|   | 
| 
template<>  | 
| char  | get (const void *p) const | 
|   | 
| 
template<>  | 
| unsigned char  | get (const void *p) const | 
|   | 
| 
template<>  | 
| short  | get (const void *p) const | 
|   | 
| 
template<>  | 
| unsigned short  | get (const void *p) const | 
|   | 
| 
template<>  | 
| int  | get (const void *p) const | 
|   | 
| 
template<>  | 
| unsigned int  | get (const void *p) const | 
|   | 
| 
template<>  | 
| long  | get (const void *p) const | 
|   | 
| 
template<>  | 
| unsigned long  | get (const void *p) const | 
|   | 
| 
template<>  | 
| float  | get (const void *p) const | 
|   | 
| 
template<>  | 
| double  | get (const void *p) const | 
|   | 
 | 
| 
template<class T , class F >  | 
| static void  | putT (void *p, const T &x) | 
|   | Convert input of base type to internally applied base type. 
  | 
|   | 
| 
template<class T >  | 
| static void  | putToVoidT (void *p, const T &x) | 
|   | Void - does nothing, regardless of input type. 
  | 
|   | 
| template<class T >  | 
| static void  | putToStringT (void *p, const T &x) | 
|   | A handler for converting input to a std::string.  
  | 
|   | 
| 
template<class T >  | 
| static void  | putToCasterT (void *p, const T &x) | 
|   | 
| template<class T , class F >  | 
| static T  | getT (const void *p) | 
|   | The main handler converting input to output.  
  | 
|   | 
| 
template<class T >  | 
| static T  | getFromVoidT (const void *p) | 
|   | This default implementation is for integral numeric types, returns zero. Specialisation for floats returns NAN. 
  | 
|   | 
| 
template<class T >  | 
| static T  | getFromStringT (const void *p) | 
|   | The main handler converting input to output. 
  | 
|   | 
| template<class F >  | 
| static void  | translateT (const Caster &c, const void *ptrC, void *ptr) | 
|   | Casts from ptrC to ptr.  
  | 
|   | 
| template<class F >  | 
| static bool  | compareT (const void *ptr, const Caster &c, const void *cPtr) | 
|   | Checks equality through base type casting.  
  | 
|   | 
| 
template<class F >  | 
| static std::ostream &  | toOStreamT (std::ostream &ostr, const void *p) | 
|   | Output. 
  | 
|   | 
| 
template<class F >  | 
| static std::ostream &  | toOStreamFloats (std::ostream &ostr, const void *p) | 
|   | 
| 
template<class F >  | 
| static std::istream &  | fromStreamT (std::istream &istr, const void *p) | 
|   | Output. 
  | 
|   | 
| 
template<>  | 
| void  | translateT (const Caster &c, const void *ptrC, void *ptr) | 
|   | 
| 
template<>  | 
| void  | translateT (const Caster &c, const void *ptrC, void *ptr) | 
|   | 
| 
template<>  | 
| double  | getFromVoidT (const void *p) | 
|   | Specialisation for floats returns NAN. 
  | 
|   | 
| 
template<>  | 
| float  | getFromVoidT (const void *p) | 
|   | 
| template<>  | 
| bool  | compareT (const void *ptr, const Caster &c, const void *cPtr) | 
|   | Semantics: no data, hence no bytes to be compared.  
  | 
|   | 
| 
template<>  | 
| std::ostream &  | toOStreamT (std::ostream &ostr, const void *p) | 
|   | Append nothing to the stream. 
  | 
|   | 
| 
template<>  | 
| std::ostream &  | toOStreamT (std::ostream &ostr, const void *p) | 
|   | Append 'true' or false to the stream. 
  | 
|   | 
| 
template<>  | 
| std::ostream &  | toOStreamT (std::ostream &ostr, const void *p) | 
|   | Append to the stream. 
  | 
|   | 
| 
template<>  | 
| std::ostream &  | toOStreamT (std::ostream &ostr, const void *p) | 
|   | 
| 
template<>  | 
| std::ostream &  | toOStreamT (std::ostream &ostr, const void *p) | 
|   | 
 | 
| 
void(*  | putBool )(void *p, const bool &x) | 
|   | 
| 
void(*  | putInt )(void *p, const int &x) | 
|   | 
| 
void(*  | putChar )(void *p, const char &x) | 
|   | 
| 
void(*  | putUChar )(void *p, const unsigned char &x) | 
|   | 
| 
void(*  | putUInt )(void *p, const unsigned int &x) | 
|   | 
| 
void(*  | putShort )(void *p, const short &x) | 
|   | 
| 
void(*  | putUShort )(void *p, const unsigned short &x) | 
|   | 
| 
void(*  | putLong )(void *p, const long &x) | 
|   | 
| 
void(*  | putULong )(void *p, const unsigned long &x) | 
|   | 
| 
void(*  | putFloat )(void *p, const float &x) | 
|   | 
| 
void(*  | putDouble )(void *p, const double &x) | 
|   | 
| 
char(*  | getChar )(const void *p) | 
|   | 
| 
unsigned char(*  | getUChar )(const void *p) | 
|   | 
| 
int(*  | getInt )(const void *p) | 
|   | 
| 
unsigned int(*  | getUInt )(const void *p) | 
|   | 
| 
short(*  | getShort )(const void *p) | 
|   | 
| 
unsigned short(*  | getUShort )(const void *p) | 
|   | 
| 
long(*  | getLong )(const void *p) | 
|   | 
| 
unsigned long(*  | getULong )(const void *p) | 
|   | 
| 
float(*  | getFloat )(const void *p) | 
|   | 
| 
double(*  | getDouble )(const void *p) | 
|   | 
| 
bool(*  | getBool )(const void *p) | 
|   | 
| 
void(*  | translatePtr )(const Caster &c, const void *ptrC, void *ptr) | 
|   | Convert from str pointer and Caster. 
  | 
|   | 
| 
bool(*  | comparePtr )(const void *, const Caster &c, const void *) = nullptr | 
|   | 
| 
std::ostream &(*  | toOStreamPtr )(std::ostream &ostr, const void *p) | 
|   | Write to stream. 
  | 
|   | 
| 
std::istream &(*  | fromStreamPtr )(std::istream &istr, const void *p) = nullptr | 
|   | 
| 
const std::type_info *  | type | 
|   | Current type. 
  | 
|   | 
| 
size_t  | byteSize | 
|   | Size of target memory (target object) in bytes. 
  | 
|   |