21 #ifndef mia_core_cost_hh 22 #define mia_core_cost_hh 28 #ifndef EXPORT_HANDLER 30 # define EXPORT_HANDLER __declspec(dllimport) 32 # define EXPORT_HANDLER 63 template <
typename T,
typename V>
93 double value(
const T& src)
const;
104 double evaluate_force(
const T& src, V& force)
const;
111 void set_reference(
const T& ref);
113 virtual double do_value(
const T& a,
const T& b)
const = 0;
114 virtual double do_evaluate_force(
const T& a,
const T& b, V& force)
const = 0;
115 virtual void post_set_reference(
const T& ref);
A class to make a const reference not so const.
The generic cost function interface.
static const char * type_descr
plugin path helper variable
T Data
typedef for generic programming: The data type used by the cost function
#define NS_MIA_BEGIN
conveniance define to start the mia namespace
RData::Pointer PData
Pointer to const reference holder TRefHolder of the cost function data.
cost_type plugin_type
plugin searchpath helper type
T plugin_data
plugin searchpath helper type
std::shared_ptr< TRefHolder< T > > Pointer
pointer type of this reference holder.
#define EXPORT_CORE
Macro to manage Visual C++ style dllimport/dllexport.
The base class for all plug-in created object.
V Force
typedef for generic programming: The gradient forca type create by the cost function ...
TRefHolder< T > RData
Const reference holder TRefHolder of the cost function data.
#define NS_MIA_END
conveniance define to end the mia namespace