21 #ifndef mia_internal_transformfactory_hh 22 #define mia_internal_transformfactory_hh 43 template <
typename Transform>
57 typedef typename Transform::Size
Size;
60 typedef std::shared_ptr<TTransformCreator<Transform> >
Pointer;
70 typename Transform::Pointer create(
const Size& size)
const;
77 bool has_property(
const char *property)
const;
83 void add_property(
const char *property);
85 virtual typename Transform::Pointer do_create(
const Size& size,
const InterpolatorFactory& ipf)
const = 0;
87 std::set<std::string> m_properties;
88 InterpolatorFactory m_ipf;
97 template <
typename Transform>
111 virtual Product *do_create() const __attribute__((warn_unused_result));
112 virtual Product *do_create(const InterpolatorFactory& factory) const __attribute__((warn_unused_result)) = 0 ;
#define NS_MIA_BEGIN
conveniance define to start the mia namespace
std::shared_ptr< CSplineKernel > PSplineKernel
This is tha base of all plugins that create "things", like filters, cost functions time step operator...
The base class for all plug-in created object.
CSplineBoundaryCondition::Pointer PSplineBoundaryCondition
#define NS_MIA_END
conveniance define to end the mia namespace