Read@CVL
Energy< captype, tcaptype, flowtype > Class Template Reference

#include <energy.h>

Inheritance diagram for Energy< captype, tcaptype, flowtype >:
Collaboration diagram for Energy< captype, tcaptype, flowtype >:

Public Types

typedef GraphT::node_id Var
 
typedef captype Value
 
typedef flowtype TotalValue
 
- Public Types inherited from Graph< captype, tcaptype, flowtype >
enum  termtype { SOURCE = 0, SINK = 1 }
 
typedef int node_id
 
typedef arc * arc_id
 

Public Member Functions

 Energy (int var_num_max, int edge_num_max, void(*err_function)(const char *)=NULL)
 
 ~Energy ()
 
Var add_variable (int num=1)
 
void add_constant (Value E)
 
void add_term1 (Var x, Value E0, Value E1)
 
void add_term2 (Var x, Var y, Value E00, Value E01, Value E10, Value E11)
 
void add_term3 (Var x, Var y, Var z, Value E000, Value E001, Value E010, Value E011, Value E100, Value E101, Value E110, Value E111)
 
TotalValue minimize ()
 
int get_var (Var x)
 
- Public Member Functions inherited from Graph< captype, tcaptype, flowtype >
 Graph (int node_num_max, int edge_num_max, void(*err_function)(const char *)=NULL)
 
 ~Graph ()
 
node_id add_node (int num=1)
 
void add_edge (node_id i, node_id j, captype cap, captype rev_cap)
 
void add_tweights (node_id i, tcaptype cap_source, tcaptype cap_sink)
 
flowtype maxflow (bool reuse_trees=false, Block< node_id > *changed_list=NULL)
 
termtype what_segment (node_id i, termtype default_segm=SOURCE)
 
void reset ()
 
arc_id get_first_arc ()
 
arc_id get_next_arc (arc_id a)
 
int get_node_num ()
 
int get_arc_num ()
 
void get_arc_ends (arc_id a, node_id &i, node_id &j)
 
tcaptype get_trcap (node_id i)
 
captype get_rcap (arc *a)
 
void set_trcap (node_id i, tcaptype trcap)
 
void set_rcap (arc *a, captype rcap)
 
void mark_node (node_id i)
 
void remove_from_changed_list (node_id i)
 
void Copy (Graph< captype, tcaptype, flowtype > *g0)
 

Member Typedef Documentation

template<typename captype , typename tcaptype , typename flowtype >
typedef flowtype Energy< captype, tcaptype, flowtype >::TotalValue
template<typename captype , typename tcaptype , typename flowtype >
typedef captype Energy< captype, tcaptype, flowtype >::Value
template<typename captype , typename tcaptype , typename flowtype >
typedef GraphT::node_id Energy< captype, tcaptype, flowtype >::Var

Constructor & Destructor Documentation

template<typename captype , typename tcaptype , typename flowtype >
Energy< captype, tcaptype, flowtype >::Energy ( int  var_num_max,
int  edge_num_max,
void(*)(const char *)  err_function = NULL 
)
inline
template<typename captype , typename tcaptype , typename flowtype >
Energy< captype, tcaptype, flowtype >::~Energy ( )
inline

Member Function Documentation

template<typename captype , typename tcaptype , typename flowtype >
void Energy< captype, tcaptype, flowtype >::add_constant ( Value  E)
inline
template<typename captype , typename tcaptype , typename flowtype >
void Energy< captype, tcaptype, flowtype >::add_term1 ( Var  x,
Value  E0,
Value  E1 
)
inline
template<typename captype , typename tcaptype , typename flowtype >
void Energy< captype, tcaptype, flowtype >::add_term2 ( Var  x,
Var  y,
Value  E00,
Value  E01,
Value  E10,
Value  E11 
)
inline
template<typename captype , typename tcaptype , typename flowtype >
void Energy< captype, tcaptype, flowtype >::add_term3 ( Var  x,
Var  y,
Var  z,
Value  E000,
Value  E001,
Value  E010,
Value  E011,
Value  E100,
Value  E101,
Value  E110,
Value  E111 
)
inline
template<typename captype , typename tcaptype , typename flowtype >
Energy< captype, tcaptype, flowtype >::Var Energy< captype, tcaptype, flowtype >::add_variable ( int  num = 1)
inline
template<typename captype , typename tcaptype , typename flowtype >
int Energy< captype, tcaptype, flowtype >::get_var ( Var  x)
inline
template<typename captype , typename tcaptype , typename flowtype >
Energy< captype, tcaptype, flowtype >::TotalValue Energy< captype, tcaptype, flowtype >::minimize ( )
inline

The documentation for this class was generated from the following file: