ML Reference
|
Template class to register the standard integer classes as voxel types in the ML. More...
#include <mlStdTypeInfos.h>
Public Member Functions | |
MLTStdTypeInfos () | |
Constructor. | |
template<> | |
void | MLTYPE_negate (const MLTypeData *p, MLTypeData *q) |
template<> | |
void | MLTYPE_negate (const MLTypeData *p, MLTypeData *q) |
template<> | |
void | MLTYPE_negate (const MLTypeData *p, MLTypeData *q) |
template<> | |
void | MLTYPE_negate (const MLTypeData *p, MLTypeData *q) |
Static Public Member Functions | |
Returns specialized data type names. | |
static const char * | typeName (MLint8 *) |
static const char * | typeName (MLuint8 *) |
static const char * | typeName (MLint16 *) |
static const char * | typeName (MLuint16 *) |
static const char * | typeName (MLint32 *) |
static const char * | typeName (MLuint32 *) |
static const char * | typeName (MLfloat *) |
static const char * | typeName (MLdouble *) |
static const char * | typeName (MLint64 *) |
static const char * | typeName (MLuint64 *) |
Methods to be overloaded by derived classes if the corresponding flag is true. | |
static char * | MLTYPE_getStringValue (const MLTypeData *p) |
Return value as string to be freed by MLFree(). Use MLTypeComponentsToString() if possible. | |
static void | MLTYPE_setStringValue (const char *s, MLTypeData *r) |
Convert string s to value and write result into r. Use MLTypeComponentsFromString() if possible. | |
static void | MLTYPE_setToMinimum (MLTypeData *p) |
Sets value to minimum value. Must be implemented. | |
static void | MLTYPE_setToMaximum (MLTypeData *p) |
Sets value to minimum value. Must be implemented. | |
static void | MLTYPE_setToDefault (MLTypeData *p) |
Sets value to default value. Must be implemented. | |
static MLdouble | MLTYPE_getComponent (const MLTypeData *p, size_t) |
Gets n-th component as double value. Must be implemented. | |
static void | MLTYPE_setComponent (MLTypeData *p, size_t, MLdouble v) |
Sets n-th component from double value. Must be implemented. | |
static void | MLTYPE_copy (const MLTypeData *p, MLTypeData *q) |
Copy first parameter to second one. | |
static void | MLTYPE_arrayCopy (const MLTypeData *p, MLTypeData *q, size_t n) |
Copy s elements from first parameter to second one. | |
static void | MLTYPE_arrayCopyWithStrides (const MLTypeData *p, MLssize_t ps, MLTypeData *q, MLssize_t qs, size_t n) |
Same as above, but allows to specify stride values for source and destination. | |
static void | MLTYPE_arrayFill (const MLTypeData *p, MLTypeData *q, size_t n) |
Copy first parameter to second one as often as given in the third parameter. | |
static bool | MLTYPE_castToBool (const MLTypeData *p) |
Return parameter casted to bool. Typically false when it is identically to the default element, otherwise true. | |
static MLint | MLTYPE_castToInt (const MLTypeData *p) |
Return parameter casted to integer. Often the integer cast of the first component. | |
static MLdouble | MLTYPE_castToDouble (const MLTypeData *p) |
Return parameter casted to double. Often the integer cast of the first component. | |
static void | MLTYPE_castToOtherType (const MLTypeData *myData, const MLTypeInfos *otherInfos, MLTypeData *otherData) |
Return parameter casted to double. Usually implemented by default with function casting component wise. | |
static void | MLTYPE_castFromInt (MLint p, MLTypeData *q) |
Cast first parameters to data type and write it into second parameter. | |
static void | MLTYPE_castFromDouble (MLdouble p, MLTypeData *q) |
Cast first parameters to data type and write it into second parameter. | |
static void | MLTYPE_castFromOtherType (const MLTypeInfos *otherInfos, const MLTypeData *otherData, MLTypeData *myData) |
Cast first parameters to data type and write it into second parameter. | |
static bool | MLTYPE_isEqualToType (const MLTypeData *p, const MLTypeData *q) |
Return true if both parameters are equal, otherwise false. | |
static bool | MLTYPE_isEqualToTypeWithEpsilon (const MLTypeData *p, const MLTypeData *q, MLdouble eps) |
Returns true if both parameters are equal within a static epsilon, otherwise false . | |
static void | MLTYPE_negate (const MLTypeData *p, MLTypeData *q) |
Negate the value. See also the specialized negations for unsigned types which leave value unchanged. | |
static void | MLTYPE_normalize (const MLTypeData *, MLTypeData *q) |
Normalize type. | |
static void | MLTYPE_arrayRescale (const MLTypeData *p, MLdouble q, const MLTypeData *r, MLTypeData *t, size_t s) |
Scale the values from the first parameter with the second parameter and offset it with the value from the third parameter, writing it to the position of the fourth parameter, times the fifth parameter. | |
static bool | MLTYPE_arrayEqualsValue (const MLTypeData *p, const MLTypeData *q, size_t s) |
Check that the first argument equals all the values given with the second argument (and the size in the third argument), returns true if all values are equal. | |
static void | MLTYPE_arrayGetMinMax (const MLTypeData *p, size_t s, MLdouble &min, MLdouble &max) |
Get the mininum and maximum component values from the array in the first argument, and return it in the third and fourth argument, the size of the array is in the second argument. | |
static void | MLTYPE_interpolate (const MLTypeData *p, const MLTypeData *q, MLdouble r, MLTypeData *t) |
Interpolate linearly between the first and the second parameter, at the position given by the third parameter (between 0 and 1). | |
static void | MLTYPE_multWithInt (const MLTypeData *p, MLint q, MLTypeData *r) |
Implement multiplication with integer. Result written into parameter three. | |
static void | MLTYPE_multWithDouble (const MLTypeData *p, MLdouble q, MLTypeData *r) |
Implement multiplication with double. Result written into parameter three. | |
static void | MLTYPE_multWithType (const MLTypeData *p, const MLTypeData *q, MLTypeData *r) |
Implement multiplication with its own type. Result written into parameter three. | |
static void | MLTYPE_multWithOtherType (const MLTypeInfos *otherInfos, const MLTypeData *otherData, const MLTypeData *myData, MLTypeData *r) |
Implement multiplication with another type. Result written into parameter three. | |
static void | MLTYPE_plusInt (const MLTypeData *p, MLint q, MLTypeData *r) |
Implement integer addition to parameter one. Result written into parameter three. | |
static void | MLTYPE_plusDouble (const MLTypeData *p, MLdouble q, MLTypeData *r) |
Implement double addition to parameter one. Result written into parameter three. | |
static void | MLTYPE_plusType (const MLTypeData *p, const MLTypeData *q, MLTypeData *r) |
Implement parameter two addition to parameter one. Result written into parameter three. | |
Protected Member Functions | |
template<> | |
MLfloat | castToType (MLdouble v) |
template<> | |
MLdouble | castToType (MLdouble v) |
Return types and number of them to which this type can be casted without information loss. | |
void | _getGoodCastTos (MLint8, MLuint &num, const char **&typeNames) |
void | _getGoodCastTos (MLuint8, MLuint &num, const char **&typeNames) |
void | _getGoodCastTos (MLint16, MLuint &num, const char **&typeNames) |
void | _getGoodCastTos (MLuint16, MLuint &num, const char **&typeNames) |
void | _getGoodCastTos (MLint32, MLuint &num, const char **&typeNames) |
void | _getGoodCastTos (MLuint32, MLuint &num, const char **&typeNames) |
void | _getGoodCastTos (MLfloat, MLuint &num, const char **&typeNames) |
void | _getGoodCastTos (MLdouble, MLuint &num, const char **&typeNames) |
void | _getGoodCastTos (MLint64, MLuint &num, const char **&typeNames) |
void | _getGoodCastTos (MLuint64, MLuint &num, const char **&typeNames) |
Static Protected Member Functions | |
static VTYP | castToType (MLdouble v) |
implement method that rounds a double value when casting to integer, but doesn't round when casting to a float type (special cased below) | |
Static Protected Attributes | |
static const VTYP | _typeMin |
Permanent instance of the minimum value. | |
static const VTYP | _typeMax |
Permanent instance of the maximum value. | |
static const VTYP | _typeDefault = VTYP(0) |
Permanent instance of the default value. | |
static const char | _typeInfoString [_ML_STD_SLEN] |
Permanent instance of the type's description. | |
static MLTypeInfos * | _myInfos = NULL |
Permanent instance of a pointer to the typeInfos used by this class. | |
static MLint32 | _numInstances = 0 |
Number of instances of this class. | |
Return the correct equivalent for range and precision routines. | |
MLDataType | _rangeAndPrecisionEquiv (MLint8) |
MLDataType | _rangeAndPrecisionEquiv (MLuint8) |
MLDataType | _rangeAndPrecisionEquiv (MLint16) |
MLDataType | _rangeAndPrecisionEquiv (MLuint16) |
MLDataType | _rangeAndPrecisionEquiv (MLint32) |
MLDataType | _rangeAndPrecisionEquiv (MLuint32) |
MLDataType | _rangeAndPrecisionEquiv (MLfloat) |
MLDataType | _rangeAndPrecisionEquiv (MLdouble) |
MLDataType | _rangeAndPrecisionEquiv (MLint64) |
MLDataType | _rangeAndPrecisionEquiv (MLuint64) |
static VTYP & | value_cast (MLTypeData *v) |
static const VTYP & | value_cast (const MLTypeData *v) |
Template class to register the standard integer classes as voxel types in the ML.
Definition at line 45 of file mlStdTypeInfos.h.
ml::MLTStdTypeInfos< VTYP >::MLTStdTypeInfos | ( | ) | [inline] |
Constructor.
In derived classes all members must be set correctly dependent on the properties of the described data type. The more properties are implemented the more module can support this data type. See MLTypeInfos.
Assign all pointers to the static functions implementing the operations.
Initialization of the main properties of MLTypeInfos. Returns 1(=true) on success, 0(=false) on failure. Initialize the data type information.
-Define sizeof of real data type (not the size of the carrying byte type)
-Define string name of data type.
-Set minimum and maximum double values. Notes: Try to select values which will not be exceeded when the new type is casted to double. Try to select values which are converted to the types's minimum/maximum after casting them to the new type. However, that's desirable but not really necessary.
-Set pointers to a permanent instances of the the data type minimum and maximum value. Notes: Try to select minimum and maximum value so that they match to minimum and maximum double value after casting them to double. However, that's desirable but not really necessary.
-Set pointer to a permanent instance of the the data type default value in derived class. Notes: This value will be used when initializing or completing incomplete type components e.g., after incomplete string scans or casts. This value will also be used as a 0-element. This value will be used as "false" on boolean casts in the default implementation. All other values will be considered as "true".
-Set pointer to a permanent null-terminated string describing the type configuration. It is needed for most default implementations of the type, e.g., correct big endian/little endian conversions when storing loading this data, for automatic casts to other type etc. It must exactly describe the type configuration. Use
So a data type consisting of a float[3], a bool, and two signed integers would lead to "fffbII".
-Pass true if it is a basic type, i.e., one of the following: (unsigned) char, (unsigned) short, (unsigned) int, (unsigned) long, float, double, long double or MLint64.
-Pass a standard data type which has comparable range and precision behavior.
-componentAddresses is an array of pointers to the components of an example data instance so that gaps between components can be evaluated. It must contain exactly as many pointers as the length of typeStructInfo.
Take a type instance and create an array of addresses to all of it is components.
Definition at line 278 of file mlStdTypeInfos.h.
References ML_CATCH_RETHROW, ML_CHECK_THROW, ML_PRINT_FATAL_ERROR, ML_PROGRAMMING_ERROR, ML_TRACE_IN, ML_TRY, ML_TYPE_ASSIGN_FUNCTION_POINTERS, MLScalarTypeGroup, and MLTypeInfosInit().
void ml::MLTStdTypeInfos< VTYP >::_getGoodCastTos | ( | MLint8 | , |
MLuint & | num, | ||
const char **& | typeNames | ||
) | [inline, protected] |
Definition at line 102 of file mlStdTypeInfos.h.
References ML_CATCH_RETHROW, ML_TRACE_IN, and ML_TRY.
void ml::MLTStdTypeInfos< VTYP >::_getGoodCastTos | ( | MLint64 | , |
MLuint & | num, | ||
const char **& | typeNames | ||
) | [inline, protected] |
Definition at line 234 of file mlStdTypeInfos.h.
References ML_CATCH_RETHROW, ML_TRACE_IN, and ML_TRY.
void ml::MLTStdTypeInfos< VTYP >::_getGoodCastTos | ( | MLuint64 | , |
MLuint & | num, | ||
const char **& | typeNames | ||
) | [inline, protected] |
Definition at line 249 of file mlStdTypeInfos.h.
References ML_CATCH_RETHROW, ML_TRACE_IN, and ML_TRY.
void ml::MLTStdTypeInfos< VTYP >::_getGoodCastTos | ( | MLuint8 | , |
MLuint & | num, | ||
const char **& | typeNames | ||
) | [inline, protected] |
Definition at line 120 of file mlStdTypeInfos.h.
References ML_CATCH_RETHROW, ML_TRACE_IN, and ML_TRY.
void ml::MLTStdTypeInfos< VTYP >::_getGoodCastTos | ( | MLint16 | , |
MLuint & | num, | ||
const char **& | typeNames | ||
) | [inline, protected] |
Definition at line 141 of file mlStdTypeInfos.h.
References ML_CATCH_RETHROW, ML_TRACE_IN, and ML_TRY.
void ml::MLTStdTypeInfos< VTYP >::_getGoodCastTos | ( | MLuint16 | , |
MLuint & | num, | ||
const char **& | typeNames | ||
) | [inline, protected] |
Definition at line 158 of file mlStdTypeInfos.h.
References ML_CATCH_RETHROW, ML_TRACE_IN, and ML_TRY.
void ml::MLTStdTypeInfos< VTYP >::_getGoodCastTos | ( | MLint32 | , |
MLuint & | num, | ||
const char **& | typeNames | ||
) | [inline, protected] |
Definition at line 177 of file mlStdTypeInfos.h.
References ML_CATCH_RETHROW, ML_TRACE_IN, and ML_TRY.
void ml::MLTStdTypeInfos< VTYP >::_getGoodCastTos | ( | MLuint32 | , |
MLuint & | num, | ||
const char **& | typeNames | ||
) | [inline, protected] |
Definition at line 193 of file mlStdTypeInfos.h.
References ML_CATCH_RETHROW, ML_TRACE_IN, and ML_TRY.
void ml::MLTStdTypeInfos< VTYP >::_getGoodCastTos | ( | MLfloat | , |
MLuint & | num, | ||
const char **& | typeNames | ||
) | [inline, protected] |
Definition at line 210 of file mlStdTypeInfos.h.
References ML_CATCH_RETHROW, ML_TRACE_IN, and ML_TRY.
void ml::MLTStdTypeInfos< VTYP >::_getGoodCastTos | ( | MLdouble | , |
MLuint & | num, | ||
const char **& | typeNames | ||
) | [inline, protected] |
Definition at line 224 of file mlStdTypeInfos.h.
References ML_CATCH_RETHROW, ML_TRACE_IN, and ML_TRY.
MLDataType ml::MLTStdTypeInfos< VTYP >::_rangeAndPrecisionEquiv | ( | MLuint32 | ) | [inline, protected] |
Definition at line 84 of file mlStdTypeInfos.h.
References MLuint32Type.
MLDataType ml::MLTStdTypeInfos< VTYP >::_rangeAndPrecisionEquiv | ( | MLfloat | ) | [inline, protected] |
Definition at line 85 of file mlStdTypeInfos.h.
References MLfloatType.
MLDataType ml::MLTStdTypeInfos< VTYP >::_rangeAndPrecisionEquiv | ( | MLdouble | ) | [inline, protected] |
Definition at line 86 of file mlStdTypeInfos.h.
References MLdoubleType.
MLDataType ml::MLTStdTypeInfos< VTYP >::_rangeAndPrecisionEquiv | ( | MLint64 | ) | [inline, protected] |
Definition at line 87 of file mlStdTypeInfos.h.
References MLint64Type.
MLDataType ml::MLTStdTypeInfos< VTYP >::_rangeAndPrecisionEquiv | ( | MLuint64 | ) | [inline, protected] |
Definition at line 88 of file mlStdTypeInfos.h.
References MLuint64Type.
MLDataType ml::MLTStdTypeInfos< VTYP >::_rangeAndPrecisionEquiv | ( | MLuint8 | ) | [inline, protected] |
Definition at line 80 of file mlStdTypeInfos.h.
References MLuint8Type.
MLDataType ml::MLTStdTypeInfos< VTYP >::_rangeAndPrecisionEquiv | ( | MLint16 | ) | [inline, protected] |
Definition at line 81 of file mlStdTypeInfos.h.
References MLint16Type.
MLDataType ml::MLTStdTypeInfos< VTYP >::_rangeAndPrecisionEquiv | ( | MLint8 | ) | [inline, protected] |
Definition at line 79 of file mlStdTypeInfos.h.
References MLint8Type.
MLDataType ml::MLTStdTypeInfos< VTYP >::_rangeAndPrecisionEquiv | ( | MLuint16 | ) | [inline, protected] |
Definition at line 82 of file mlStdTypeInfos.h.
References MLuint16Type.
MLDataType ml::MLTStdTypeInfos< VTYP >::_rangeAndPrecisionEquiv | ( | MLint32 | ) | [inline, protected] |
Definition at line 83 of file mlStdTypeInfos.h.
References MLint32Type.
MLfloat ml::MLTStdTypeInfos< MLfloat >::castToType | ( | MLdouble | v | ) | [inline, protected] |
Definition at line 510 of file mlStdTypeInfos.h.
MLdouble ml::MLTStdTypeInfos< MLdouble >::castToType | ( | MLdouble | v | ) | [inline, protected] |
Definition at line 511 of file mlStdTypeInfos.h.
static VTYP ml::MLTStdTypeInfos< VTYP >::castToType | ( | MLdouble | v | ) | [inline, static, protected] |
implement method that rounds a double value when casting to integer, but doesn't round when casting to a float type (special cased below)
Definition at line 98 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_arrayCopy | ( | const MLTypeData * | p, |
MLTypeData * | q, | ||
size_t | n | ||
) | [inline, static] |
Copy s elements from first parameter to second one.
Definition at line 409 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_arrayCopyWithStrides | ( | const MLTypeData * | p, |
MLssize_t | ps, | ||
MLTypeData * | q, | ||
MLssize_t | qs, | ||
size_t | n | ||
) | [inline, static] |
Same as above, but allows to specify stride values for source and destination.
Definition at line 411 of file mlStdTypeInfos.h.
static bool ml::MLTStdTypeInfos< VTYP >::MLTYPE_arrayEqualsValue | ( | const MLTypeData * | p, |
const MLTypeData * | q, | ||
size_t | s | ||
) | [inline, static] |
Check that the first argument equals all the values given with the second argument (and the size in the third argument), returns true if all values are equal.
Definition at line 457 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_arrayFill | ( | const MLTypeData * | p, |
MLTypeData * | q, | ||
size_t | n | ||
) | [inline, static] |
Copy first parameter to second one as often as given in the third parameter.
Definition at line 413 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_arrayGetMinMax | ( | const MLTypeData * | p, |
size_t | s, | ||
MLdouble & | min, | ||
MLdouble & | max | ||
) | [inline, static] |
Get the mininum and maximum component values from the array in the first argument, and return it in the third and fourth argument, the size of the array is in the second argument.
Definition at line 468 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_arrayRescale | ( | const MLTypeData * | p, |
MLdouble | q, | ||
const MLTypeData * | r, | ||
MLTypeData * | t, | ||
size_t | s | ||
) | [inline, static] |
Scale the values from the first parameter with the second parameter and offset it with the value from the third parameter, writing it to the position of the fourth parameter, times the fifth parameter.
Definition at line 446 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_castFromDouble | ( | MLdouble | p, |
MLTypeData * | q | ||
) | [inline, static] |
Cast first parameters to data type and write it into second parameter.
Definition at line 427 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_castFromInt | ( | MLint | p, |
MLTypeData * | q | ||
) | [inline, static] |
Cast first parameters to data type and write it into second parameter.
Definition at line 425 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_castFromOtherType | ( | const MLTypeInfos * | otherInfos, |
const MLTypeData * | otherData, | ||
MLTypeData * | myData | ||
) | [inline, static] |
Cast first parameters to data type and write it into second parameter.
Definition at line 429 of file mlStdTypeInfos.h.
References MLTypeCastToOtherType().
static bool ml::MLTStdTypeInfos< VTYP >::MLTYPE_castToBool | ( | const MLTypeData * | p | ) | [inline, static] |
Return parameter casted to bool. Typically false when it is identically to the default element, otherwise true.
Definition at line 416 of file mlStdTypeInfos.h.
References MLValuesDifferWOM().
static MLdouble ml::MLTStdTypeInfos< VTYP >::MLTYPE_castToDouble | ( | const MLTypeData * | p | ) | [inline, static] |
Return parameter casted to double. Often the integer cast of the first component.
Definition at line 420 of file mlStdTypeInfos.h.
static MLint ml::MLTStdTypeInfos< VTYP >::MLTYPE_castToInt | ( | const MLTypeData * | p | ) | [inline, static] |
Return parameter casted to integer. Often the integer cast of the first component.
Definition at line 418 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_castToOtherType | ( | const MLTypeData * | myData, |
const MLTypeInfos * | otherInfos, | ||
MLTypeData * | otherData | ||
) | [inline, static] |
Return parameter casted to double. Usually implemented by default with function casting component wise.
Definition at line 422 of file mlStdTypeInfos.h.
References MLTypeCastToOtherType().
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_copy | ( | const MLTypeData * | p, |
MLTypeData * | q | ||
) | [inline, static] |
Copy first parameter to second one.
Definition at line 407 of file mlStdTypeInfos.h.
static MLdouble ml::MLTStdTypeInfos< VTYP >::MLTYPE_getComponent | ( | const MLTypeData * | p, |
size_t | |||
) | [inline, static] |
Gets n-th component as double value. Must be implemented.
Definition at line 403 of file mlStdTypeInfos.h.
static char* ml::MLTStdTypeInfos< VTYP >::MLTYPE_getStringValue | ( | const MLTypeData * | p | ) | [inline, static] |
Return value as string to be freed by MLFree(). Use MLTypeComponentsToString() if possible.
Definition at line 392 of file mlStdTypeInfos.h.
References MLTypeComponentsToString().
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_interpolate | ( | const MLTypeData * | p, |
const MLTypeData * | q, | ||
MLdouble | r, | ||
MLTypeData * | t | ||
) | [inline, static] |
Interpolate linearly between the first and the second parameter, at the position given by the third parameter (between 0 and 1).
Result written into parameter three.
Definition at line 486 of file mlStdTypeInfos.h.
static bool ml::MLTStdTypeInfos< VTYP >::MLTYPE_isEqualToType | ( | const MLTypeData * | p, |
const MLTypeData * | q | ||
) | [inline, static] |
Return true if both parameters are equal, otherwise false.
Definition at line 433 of file mlStdTypeInfos.h.
References MLValuesAreEqualWOM().
static bool ml::MLTStdTypeInfos< VTYP >::MLTYPE_isEqualToTypeWithEpsilon | ( | const MLTypeData * | p, |
const MLTypeData * | q, | ||
MLdouble | eps | ||
) | [inline, static] |
Returns true
if both parameters are equal within a static epsilon, otherwise false
.
Definition at line 435 of file mlStdTypeInfos.h.
References MLAbs().
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_multWithDouble | ( | const MLTypeData * | p, |
MLdouble | q, | ||
MLTypeData * | r | ||
) | [inline, static] |
Implement multiplication with double. Result written into parameter three.
Definition at line 493 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_multWithInt | ( | const MLTypeData * | p, |
MLint | q, | ||
MLTypeData * | r | ||
) | [inline, static] |
Implement multiplication with integer. Result written into parameter three.
Definition at line 491 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_multWithOtherType | ( | const MLTypeInfos * | otherInfos, |
const MLTypeData * | otherData, | ||
const MLTypeData * | myData, | ||
MLTypeData * | r | ||
) | [inline, static] |
Implement multiplication with another type. Result written into parameter three.
Definition at line 497 of file mlStdTypeInfos.h.
References MLTypeMultWithOtherType().
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_multWithType | ( | const MLTypeData * | p, |
const MLTypeData * | q, | ||
MLTypeData * | r | ||
) | [inline, static] |
Implement multiplication with its own type. Result written into parameter three.
Definition at line 495 of file mlStdTypeInfos.h.
void ml::MLTStdTypeInfos< MLuint32 >::MLTYPE_negate | ( | const MLTypeData * | p, |
MLTypeData * | q | ||
) | [inline] |
Definition at line 517 of file mlStdTypeInfos.h.
void ml::MLTStdTypeInfos< MLuint16 >::MLTYPE_negate | ( | const MLTypeData * | p, |
MLTypeData * | q | ||
) | [inline] |
Definition at line 516 of file mlStdTypeInfos.h.
void ml::MLTStdTypeInfos< MLuint64 >::MLTYPE_negate | ( | const MLTypeData * | p, |
MLTypeData * | q | ||
) | [inline] |
Definition at line 518 of file mlStdTypeInfos.h.
void ml::MLTStdTypeInfos< MLuint8 >::MLTYPE_negate | ( | const MLTypeData * | p, |
MLTypeData * | q | ||
) | [inline] |
Definition at line 515 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_negate | ( | const MLTypeData * | p, |
MLTypeData * | q | ||
) | [inline, static] |
Negate the value. See also the specialized negations for unsigned types which leave value unchanged.
Definition at line 438 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_normalize | ( | const MLTypeData * | , |
MLTypeData * | q | ||
) | [inline, static] |
Normalize type.
Definition at line 441 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_plusDouble | ( | const MLTypeData * | p, |
MLdouble | q, | ||
MLTypeData * | r | ||
) | [inline, static] |
Implement double addition to parameter one. Result written into parameter three.
Definition at line 503 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_plusInt | ( | const MLTypeData * | p, |
MLint | q, | ||
MLTypeData * | r | ||
) | [inline, static] |
Implement integer addition to parameter one. Result written into parameter three.
Definition at line 501 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_plusType | ( | const MLTypeData * | p, |
const MLTypeData * | q, | ||
MLTypeData * | r | ||
) | [inline, static] |
Implement parameter two addition to parameter one. Result written into parameter three.
Definition at line 505 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_setComponent | ( | MLTypeData * | p, |
size_t | , | ||
MLdouble | v | ||
) | [inline, static] |
Sets n-th component from double value. Must be implemented.
Definition at line 405 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_setStringValue | ( | const char * | s, |
MLTypeData * | r | ||
) | [inline, static] |
Convert string s to value and write result into r. Use MLTypeComponentsFromString() if possible.
Definition at line 394 of file mlStdTypeInfos.h.
References MLTypeComponentsFromString().
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_setToDefault | ( | MLTypeData * | p | ) | [inline, static] |
Sets value to default value. Must be implemented.
Definition at line 401 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_setToMaximum | ( | MLTypeData * | p | ) | [inline, static] |
Sets value to minimum value. Must be implemented.
Definition at line 399 of file mlStdTypeInfos.h.
static void ml::MLTStdTypeInfos< VTYP >::MLTYPE_setToMinimum | ( | MLTypeData * | p | ) | [inline, static] |
Sets value to minimum value. Must be implemented.
Definition at line 397 of file mlStdTypeInfos.h.
static const char* ml::MLTStdTypeInfos< VTYP >::typeName | ( | MLuint32 * | ) | [inline, static] |
Definition at line 57 of file mlStdTypeInfos.h.
References MLTypeInfos::name.
static const char* ml::MLTStdTypeInfos< VTYP >::typeName | ( | MLint64 * | ) | [inline, static] |
Definition at line 60 of file mlStdTypeInfos.h.
References MLTypeInfos::name.
static const char* ml::MLTStdTypeInfos< VTYP >::typeName | ( | MLint8 * | ) | [inline, static] |
Definition at line 52 of file mlStdTypeInfos.h.
References MLTypeInfos::name.
static const char* ml::MLTStdTypeInfos< VTYP >::typeName | ( | MLdouble * | ) | [inline, static] |
Definition at line 59 of file mlStdTypeInfos.h.
References MLTypeInfos::name.
static const char* ml::MLTStdTypeInfos< VTYP >::typeName | ( | MLint32 * | ) | [inline, static] |
Definition at line 56 of file mlStdTypeInfos.h.
References MLTypeInfos::name.
static const char* ml::MLTStdTypeInfos< VTYP >::typeName | ( | MLint16 * | ) | [inline, static] |
Definition at line 54 of file mlStdTypeInfos.h.
References MLTypeInfos::name.
static const char* ml::MLTStdTypeInfos< VTYP >::typeName | ( | MLfloat * | ) | [inline, static] |
Definition at line 58 of file mlStdTypeInfos.h.
References MLTypeInfos::name.
static const char* ml::MLTStdTypeInfos< VTYP >::typeName | ( | MLuint8 * | ) | [inline, static] |
Definition at line 53 of file mlStdTypeInfos.h.
References MLTypeInfos::name.
static const char* ml::MLTStdTypeInfos< VTYP >::typeName | ( | MLuint64 * | ) | [inline, static] |
Definition at line 61 of file mlStdTypeInfos.h.
References MLTypeInfos::name.
static const char* ml::MLTStdTypeInfos< VTYP >::typeName | ( | MLuint16 * | ) | [inline, static] |
Definition at line 55 of file mlStdTypeInfos.h.
References MLTypeInfos::name.
static const VTYP& ml::MLTStdTypeInfos< VTYP >::value_cast | ( | const MLTypeData * | v | ) | [inline, static, protected] |
Definition at line 93 of file mlStdTypeInfos.h.
static VTYP& ml::MLTStdTypeInfos< VTYP >::value_cast | ( | MLTypeData * | v | ) | [inline, static, protected] |
Definition at line 92 of file mlStdTypeInfos.h.
MLTypeInfos * ml::MLTStdTypeInfos< VTYP >::_myInfos = NULL [static, protected] |
Permanent instance of a pointer to the typeInfos used by this class.
Definition at line 263 of file mlStdTypeInfos.h.
MLint32 ml::MLTStdTypeInfos< VTYP >::_numInstances = 0 [static, protected] |
Number of instances of this class.
To avoid that more than one instance is created
Definition at line 271 of file mlStdTypeInfos.h.
const VTYP ml::MLTStdTypeInfos< VTYP >::_typeDefault = VTYP(0) [static, protected] |
Permanent instance of the default value.
Definition at line 72 of file mlStdTypeInfos.h.
const char ml::MLTStdTypeInfos< VTYP >::_typeInfoString[_ML_STD_SLEN] [static, protected] |
Permanent instance of the type's description.
Definition at line 75 of file mlStdTypeInfos.h.
const VTYP ml::MLTStdTypeInfos< VTYP >::_typeMax [static, protected] |
Permanent instance of the maximum value.
Definition at line 69 of file mlStdTypeInfos.h.
const VTYP ml::MLTStdTypeInfos< VTYP >::_typeMin [static, protected] |
Permanent instance of the minimum value.
Definition at line 66 of file mlStdTypeInfos.h.