MIRA
Classes | Namespaces | Macros
Object.h File Reference

$Defines object class as base class for classFactory compatible classes$. More...

#include <string>
Include dependency graph for Object.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

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...
 

Namespaces

 mira
 specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
 

Macros

#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)
 

Detailed Description

$Defines object class as base class for classFactory compatible classes$.

Author
Ronny Stricker
Date
2010/10/20

Macro Definition Documentation

◆ MIRA_OBJECT_CONSTRUCTOR1

#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); \
} \
}
specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
Definition: IOService.h:67

◆ MIRA_OBJECT_CONSTRUCTOR2

#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 ); \
} \
}
specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
Definition: IOService.h:67

◆ MIRA_OBJECT_CONSTRUCTOR3

#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 ); \
} \
}
specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
Definition: IOService.h:67

◆ MIRA_OBJECT_CONSTRUCTOR4

#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 ); \
} \
}
specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
Definition: IOService.h:67