27 #include "../datatype/Enums.h" 
   92   unsigned int bitshift = (index % 2) * 4;
 
   93   unsigned char ucvalue = ((
unsigned char*) buffer) [index >> 1]; 
 
   94   *value = (double) ( (ucvalue >> bitshift) & 15 ); 
 
   99   unsigned int bitshift = (index % 4) * 2;
 
  100   unsigned char ucvalue = ((
unsigned char*) buffer) [index >> 2]; 
 
  101   *value = (double) ( ( ucvalue >> bitshift ) & 3 ); 
 
  106   unsigned int bitshift = (index % 8);
 
  107   unsigned char ucvalue = ((
unsigned char*) buffer) [index >> 3]; 
 
  108   *value = (double) ( ( ucvalue >> bitshift ) & 1 ); 
 
  113   *value = (double)((
unsigned char*)buffer)[index];
 
  118   *value = (double)((
char*)buffer)[index];
 
  123   *value = (double)((
unsigned short*)buffer)[index];
 
  128   *value = (double)((
short*)buffer)[index];
 
  133   *value = (double)((
unsigned int*)buffer)[index];
 
  138   *value = (double)((
int*)buffer)[index];
 
  143   *value = (double)((
float*)buffer)[index];
 
  148   *value = ((
double*)buffer)[index];
 
  153   *value = (double)(((
CInt16*)buffer)[index]).r;
 
  158   *value = (double)(((
CInt16*)buffer)[index]).i;
 
  163   *value = (double)(((
CInt32*)buffer)[index]).r;
 
  168   *value = (double)(((
CInt32*)buffer)[index]).i;
 
  173   *value = (double)(((
CFloat*)buffer)[index]).r;
 
  178   *value = (double)(((
CFloat*)buffer)[index]).i;
 
  183   *value = (((
CDouble*)buffer)[index]).r;
 
  188   *value = (((
CDouble*)buffer)[index]).i;
 
  193   unsigned int bitshift = (index % 8);
 
  194   unsigned char firstbit = ((
unsigned char) *value) & 1; 
 
  195   ((
unsigned char*)buffer)[index >> 3] &= ~(1u << bitshift); 
 
  196   ((
unsigned char*)buffer)[index >> 3] |= (firstbit << bitshift); 
 
  201   unsigned int bitshift = (index % 4) * 2;
 
  202   unsigned char first2bits = ((
unsigned char) *value) & 3; 
 
  203   ((
unsigned char*)buffer)[index >> 2] &= ~(3u << bitshift); 
 
  204   ((
unsigned char*)buffer)[index >> 2] |= (first2bits << bitshift); 
 
  209   unsigned int bitshift = (index % 2) * 4;
 
  210   unsigned char first4bits = ((
unsigned char) *value) & 15; 
 
  211   ((
unsigned char*)buffer)[index >> 1] &= ~(15u << bitshift); 
 
  212   ((
unsigned char*)buffer)[index >> 1] |= (first4bits << bitshift); 
 
  217   ((
unsigned char*)buffer)[index] = (
unsigned char) *value;
 
  222   ((
char*)buffer)[index] = (char) *value;
 
  227   ((
unsigned short*)buffer)[index] = (
unsigned short) *value;
 
  232   ((
short*)buffer)[index] = (short) *value;
 
  237   ((
unsigned int*)buffer)[index] = (
unsigned int) *value;
 
  242   ((
int*)buffer)[index] = (int) *value;
 
  247   ((
float*)buffer)[index] = (float) *value;
 
  252   ((
double*)buffer)[index] = (double) *value;
 
  257   (((
CInt16*)buffer)[index]).r = (
short) *value;
 
  262   (((
CInt16*)buffer)[index]).i = (
short)(*(value));
 
  267   (((
CInt32*)buffer)[index]).r = (
int) *value;
 
  272   (((
CInt32*)buffer)[index]).i = (
int)(*(value));
 
  277   (((
CFloat*)buffer)[index]).r = (
float) *value;
 
  282   (((
CFloat*)buffer)[index]).i = (
float) *(value);
 
  287   (((
CDouble*)buffer)[index]).r = *value;
 
  292   (((
CDouble*)buffer)[index]).i = *value;
 
  406       throw te::rst::Exception(
"Invalid data type");
 
TERASTEREXPORT void Get1bit(int index, void *buffer, double *value)
 
TERASTEREXPORT void Set2bits(int index, void *buffer, const double *value)
 
TERASTEREXPORT void SetCIDouble(int index, void *buffer, const double *value)
 
A simple type for use by driver to cast raster data blocks. 
 
TERASTEREXPORT void GetCRInt32(int index, void *buffer, double *value)
 
TERASTEREXPORT void GetInt32(int index, void *buffer, double *value)
 
TERASTEREXPORT void DummySetValue(int index, void *buffer, const double *value)
 
TERASTEREXPORT void GetCRFloat(int index, void *buffer, double *value)
 
TERASTEREXPORT void SetCRInt32(int index, void *buffer, const double *value)
 
TERASTEREXPORT void Set4bits(int index, void *buffer, const double *value)
 
TERASTEREXPORT void GetCRInt16(int index, void *buffer, double *value)
 
TERASTEREXPORT void SetCRFloat(int index, void *buffer, const double *value)
 
TERASTEREXPORT void GetCIFloat(int index, void *buffer, double *value)
 
TERASTEREXPORT void GetFloat(int index, void *buffer, double *value)
 
Utility functions for dealing with raster data blocks. 
 
TERASTEREXPORT void SetInt16(int index, void *buffer, const double *value)
 
TERASTEREXPORT void GetCIInt32(int index, void *buffer, double *value)
 
An exception class for the Raster module. 
 
TERASTEREXPORT void GetUInt16(int index, void *buffer, double *value)
 
TERASTEREXPORT void GetCIDouble(int index, void *buffer, double *value)
 
TERASTEREXPORT void GetInt16(int index, void *buffer, double *value)
 
void(* SetBufferValueFPtr)(int index, void *buffer, const double *value)
The type of function used to extract data from a buffer. 
 
TERASTEREXPORT void SetDouble(int index, void *buffer, const double *value)
 
TERASTEREXPORT void SetCIFloat(int index, void *buffer, const double *value)
 
TERASTEREXPORT void Set1bit(int index, void *buffer, const double *value)
 
TERASTEREXPORT void SetFloat(int index, void *buffer, const double *value)
 
TERASTEREXPORT void Get4bits(int index, void *buffer, double *value)
 
A simple type for use by driver to cast raster data blocks. 
 
TERASTEREXPORT void SetInt32(int index, void *buffer, const double *value)
 
TERASTEREXPORT void SetCRInt16(int index, void *buffer, const double *value)
 
TERASTEREXPORT void SetCIInt16(int index, void *buffer, const double *value)
 
TERASTEREXPORT void SetUInt16(int index, void *buffer, const double *value)
 
TERASTEREXPORT void GetDouble(int index, void *buffer, double *value)
 
TERASTEREXPORT void Get2bits(int index, void *buffer, double *value)
 
TERASTEREXPORT void GetChar(int index, void *buffer, double *value)
 
A simple type for use by driver to cast raster data blocks. 
 
TERASTEREXPORT void GetUChar(int index, void *buffer, double *value)
 
TERASTEREXPORT void SetUInt32(int index, void *buffer, const double *value)
 
TERASTEREXPORT void GetCRDouble(int index, void *buffer, double *value)
 
A simple type for use by driver to cast raster data blocks. 
 
TERASTEREXPORT void GetCIInt16(int index, void *buffer, double *value)
 
TERASTEREXPORT void GetUInt32(int index, void *buffer, double *value)
 
void(* GetBufferValueFPtr)(int index, void *buffer, double *value)
The type of function used to extract data from a buffer. 
 
TERASTEREXPORT void SetUChar(int index, void *buffer, const double *value)
 
TERASTEREXPORT void SetChar(int index, void *buffer, const double *value)
 
TERASTEREXPORT void DummyGetValue(int index, void *buffer, double *value)
 
TERASTEREXPORT void SetBlockFunctions(GetBufferValueFPtr *gb, GetBufferValueFPtr *gbi, SetBufferValueFPtr *sb, SetBufferValueFPtr *sbi, int type)
Sets the pointers to functions that helps to extract a double or complex value from a specific buffer...
 
TERASTEREXPORT void SetCIInt32(int index, void *buffer, const double *value)
 
TERASTEREXPORT void SetCRDouble(int index, void *buffer, const double *value)