27 #ifndef SRC_EDIT_COSTS_EDIT_COSTS_HPP_ 28 #define SRC_EDIT_COSTS_EDIT_COSTS_HPP_ 30 #include "../env/common_types.hpp" 37 template<
class UserNodeLabel,
class UserEdgeLabel>
76 virtual double node_rel_cost_fun(
const UserNodeLabel & node_label_1,
const UserNodeLabel & node_label_2)
const;
84 virtual void vectorize_node_label(
const UserNodeLabel & node_label, std::vector<double> & vector_representation)
const;
109 virtual double edge_rel_cost_fun(
const UserEdgeLabel & edge_label_1,
const UserEdgeLabel & edge_label_2)
const;
117 virtual void vectorize_edge_label(
const UserEdgeLabel & edge_label, std::vector<double> & vector_representation)
const;
virtual void vectorize_node_label(const UserNodeLabel &node_label, std::vector< double > &vector_representation) const
Computes a node label's representation as a real-valued vector.
virtual double edge_del_cost_fun(const UserEdgeLabel &edge_label) const
Edge deletion cost function.
virtual double edge_rel_cost_fun(const UserEdgeLabel &edge_label_1, const UserEdgeLabel &edge_label_2) const
Edge relabeling cost function.
virtual ~EditCosts()=0
Virtual destructor.
virtual double node_ins_cost_fun(const UserNodeLabel &node_label) const
Node insertions cost function.
virtual void vectorize_edge_label(const UserEdgeLabel &edge_label, std::vector< double > &vector_representation) const
Computes an edge label's representation as a real-valued vector.
virtual double node_del_cost_fun(const UserNodeLabel &node_label) const
Node deletion cost function.
Global namespace for GEDLIB.
virtual double node_rel_cost_fun(const UserNodeLabel &node_label_1, const UserNodeLabel &node_label_2) const
Node relabeling cost function.
Abstract class for defining edit cost functions.
virtual double edge_ins_cost_fun(const UserEdgeLabel &edge_label) const
Edge insertion cost function.
ged::EditCosts class definition.