43 #ifndef KERNEL_DS_TRIA_HH 44 #define KERNEL_DS_TRIA_HH 65 template<
typename KERNEL >
82 template<
typename ForwardIter,
typename Accessor>
84 const ForwardIter& fvEnd,
88 _kernel.updateCache(fvBegin,fvEnd,accessor,pr);
93 template<
typename ForwardIter1,
typename Accessor1,
94 typename ForwardIter2,
typename Accessor2>
96 const ForwardIter1& fvEnd1,
98 const ForwardIter2& fvBegin2,
99 const ForwardIter2& fvEnd2,
103 _kernel.updateCache(fvBegin1,fvEnd1,accessor1,
104 fvBegin2,fvEnd2,accessor2,
113 template<
typename FV>
121 template<
typename STDATA>
125 if( stData.valueExists(
"beta"))
127 stData.getValue(
"beta",
p_beta);
129 _kernel.loadParameters(stData);
132 template<
typename STDATA>
136 _kernel.saveParameters(stData);
137 stData.setValue(
"kernel_type",
name());
138 stData.setValue(
"beta",
p_beta);
144 return std::string(
"DS_tria_")+KERNEL::name();
149 return "triangular distance substitution" 150 " kernel: -d^beta for 0<beta<=2";
157 "beta for DS-tria-kernel. (default 2.0)"));
158 KERNEL::getParamInfos(p);
Kernel_DS_TRIA(double beta=2.)
#define CHECK_MEMBER_TEMPLATE(c)
static std::string name()
static const char * description()
void saveParameters(STDATA &stData) const
static void getParamInfos(std::vector< ParamInfo > &p)
void updateCache(const ForwardIter &fvBegin, const ForwardIter &fvEnd, Accessor accessor, ProgressReporter *pr=0) const
void updateCache(const ForwardIter1 &fvBegin1, const ForwardIter1 &fvEnd1, Accessor1 accessor1, const ForwardIter2 &fvBegin2, const ForwardIter2 &fvEnd2, Accessor2 accessor2, ProgressReporter *pr=0) const
void setBeta(double beta)
double k_function(const FV &x, const FV &y) const
The ParamInfo class contains informations about one parameter like key, help text, guiHints etc.
void loadParameters(STDATA &stData)
Polynomial< CoeffT > pow(const Polynomial< CoeffT > &p, int exponential)
Power operator.