$Defines object class as base class for classFactory compatible classes$.
More...
#include <string>
Go to the source code of this file.
|
class | PseudoClass |
| This is an auxiliary to enable more verbose exception messages. More...
|
|
class | Object |
| The object class acts as a generic base class for classes which should be used with the classFactory. More...
|
|
|
| mira |
| specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
|
|
|
#define | MIRA_OBJECT_CONSTRUCTOR1(T, A0) |
|
#define | MIRA_OBJECT_CONSTRUCTOR2(T, A0, A1) |
|
#define | MIRA_OBJECT_CONSTRUCTOR3(T, A0, A1, A2) |
|
#define | MIRA_OBJECT_CONSTRUCTOR4(T, A0, A1, A2, A3) |
|
$Defines object class as base class for classFactory compatible classes$.
- Author
- Ronny Stricker
- Date
- 2010/10/20
#define MIRA_OBJECT_CONSTRUCTOR1 |
( |
|
T, |
|
|
|
A0 |
|
) |
| |
Value:template <> int \
________________________________PLEASE_USE_THE__MIRA_OBJECT_CONSTRUCTOR1__MACRO_IN_GLOBAL_NAMESPACE_ONLY________________________________ \
<T>::FOR_CLASS() { return 0; } \
namespace mira { \
template<> \
T* mira::ClassFactoryDefaultConstClassBuilder::invoke<1,T>( std::va_list ap) { \
A0 a0 = va_arg(ap, A0); \
return new T(a0); \
} \
}
#define MIRA_OBJECT_CONSTRUCTOR2 |
( |
|
T, |
|
|
|
A0, |
|
|
|
A1 |
|
) |
| |
Value:template <> int \
________________________________PLEASE_USE_THE__MIRA_OBJECT_CONSTRUCTOR2__MACRO_IN_GLOBAL_NAMESPACE_ONLY________________________________ \
<T>::FOR_CLASS() { return 0; } \
namespace mira { \
template<> \
T* mira::ClassFactoryDefaultConstClassBuilder::invoke<2,T>( std::va_list ap) { \
A0 a0 = va_arg(ap, A0); \
A1 a1 = va_arg(ap, A1); \
return new T( a0, a1 ); \
} \
}
#define MIRA_OBJECT_CONSTRUCTOR3 |
( |
|
T, |
|
|
|
A0, |
|
|
|
A1, |
|
|
|
A2 |
|
) |
| |
Value:template <> int \
________________________________PLEASE_USE_THE__MIRA_OBJECT_CONSTRUCTOR3__MACRO_IN_GLOBAL_NAMESPACE_ONLY________________________________ \
<T>::FOR_CLASS() { return 0; } \
namespace mira { \
template<> \
T* mira::ClassFactoryDefaultConstClassBuilder::invoke<3,T>( std::va_list ap) { \
A0 a0 = va_arg(ap, A0); \
A1 a1 = va_arg(ap, A1); \
A2 a2 = va_arg(ap, A2); \
return new T( a0, a1, a2 ); \
} \
}
#define MIRA_OBJECT_CONSTRUCTOR4 |
( |
|
T, |
|
|
|
A0, |
|
|
|
A1, |
|
|
|
A2, |
|
|
|
A3 |
|
) |
| |
Value:template <> int \
________________________________PLEASE_USE_THE__MIRA_OBJECT_CONSTRUCTOR4__MACRO_IN_GLOBAL_NAMESPACE_ONLY________________________________ \
<T>::FOR_CLASS() { return 0; } \
namespace mira { \
template<> \
T* mira::ClassFactoryDefaultConstClassBuilder::invoke<4,T>( std::va_list ap) { \
A0 a0 = va_arg(ap, A0); \
A1 a1 = va_arg(ap, A1); \
A2 a2 = va_arg(ap, A2); \
A3 a3 = va_arg(ap, A3); \
return new T( a0, a1, a2, a3 ); \
} \
}