21 #ifndef mia_core_spacial_kernel_hh 22 #define mia_core_spacial_kernel_hh 67 int get_fsize()
const;
75 void apply_inplace(std::vector<double>& data)
const;
82 std::vector<double> apply(
const std::vector<double>& data)
const;
86 virtual size_t do_size()
const = 0;
88 virtual std::vector<double> do_apply(
const std::vector<double>& data)
const = 0;
117 const_iterator begin()
const;
120 const_iterator end()
const;
123 const_iterator dbegin()
const;
126 const_iterator dend()
const;
155 virtual size_t do_size()
const;
158 vec_mask m_derivative;
167 template<>
const char *
const the singleton that a plug-in handler really is
std::shared_ptr< C1DFoldingKernel > P1DSpacialKernel
THandlerSingleton< TFactoryPluginHandler< C1DSpacialKernelPlugin > > C1DSpacialKernelPluginHandler
plugin handler for spaciel filter kernels
static const char * data_descr
vec_mask::iterator iterator
kernel iterator
P1DSpacialKernel produce_spacial_kernel(const std::string &descr)
vec_mask::const_iterator const_iterator
iterator over the kernel
spacial_kernel_data plugin_data
define the plugin search path, data part
#define NS_MIA_BEGIN
conveniance define to start the mia namespace
base class for 1D filter kernels
double & operator[](int i)
standard access operator, rw version
This is tha base of all plugins that create "things", like filters, cost functions time step operator...
TFactory< C1DFoldingKernel > C1DSpacialKernelPlugin
base class for filters kernels working in the spacial domain
kernel_plugin_type plugin_type
define the plugin search path, type part
double operator[](int i) const
standard access operator, ro version
Base class for folding kernal types.
#define EXPORT_CORE
Macro to manage Visual C++ style dllimport/dllexport.
static const char * type_descr
The base class for all plug-in created object.
static const T & instance()
std::vector< double > vec_mask
Data type of the kernel coefficient vector.
The basic template of all plugin handlers.
#define NS_MIA_END
conveniance define to end the mia namespace