ETRI IVCL 1.0.0
Acceleration SW Platform for Ondevice
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
GraphCutFS::Graph Class Reference

#include <graph.h>

Classes

struct  arc_for_block_st
 
struct  arc_forward_st
 
struct  arc_rev_block_st
 
struct  arc_reverse_st
 
struct  node_block_st
 
struct  node_st
 
struct  nodeptr_st
 

Public Types

enum  termtype { SOURCE = 0 , SINK = 1 }
 
typedef float captype
 
typedef float flowtype
 
typedef void * node_id
 
typedef struct GraphCutFS::Graph::node_st node
 
typedef struct GraphCutFS::Graph::arc_forward_st arc_forward
 
typedef struct GraphCutFS::Graph::arc_reverse_st arc_reverse
 
typedef struct GraphCutFS::Graph::nodeptr_st nodeptr
 
typedef struct GraphCutFS::Graph::node_block_st node_block
 
typedef struct GraphCutFS::Graph::arc_for_block_st arc_for_block
 
typedef struct GraphCutFS::Graph::arc_rev_block_st arc_rev_block
 

Public Member Functions

 Graph (void(*err_function)(char *)=NULL)
 
 ~Graph ()
 
node_id add_node ()
 
void add_edge (node_id from, node_id to, captype cap, captype rev_cap)
 
void set_tweights (node_id i, captype cap_source, captype cap_sink)
 
void add_tweights (node_id i, captype cap_source, captype cap_sink)
 
termtype what_segment (node_id i)
 
flowtype maxflow ()
 
void set_active (node *i)
 
nodenext_active ()
 
void prepare_graph ()
 
void maxflow_init ()
 
void augment (node *s_start, node *t_start, captype *cap_middle, captype *rev_cap_middle)
 
void process_source_orphan (node *i)
 
void process_sink_orphan (node *i)
 

Public Attributes

node_blocknode_block_first
 
arc_for_blockarc_for_block_first
 
arc_rev_blockarc_rev_block_first
 
DBlock< nodeptr > * nodeptr_block
 
void(* error_function )(char *)
 
flowtype flow
 
nodequeue_first [2]
 
nodequeue_last [2]
 
nodeptrorphan_first
 
nodeptrorphan_last
 
int TIME
 

Member Typedef Documentation

◆ arc_for_block

◆ arc_forward

◆ arc_rev_block

◆ arc_reverse

◆ captype

◆ flowtype

◆ node

◆ node_block

◆ node_id

◆ nodeptr

Member Enumeration Documentation

◆ termtype

Enumerator
SOURCE 
SINK 

Constructor & Destructor Documentation

◆ Graph()

GraphCutFS::Graph::Graph ( void(*)(char *)  err_function = NULL)

◆ ~Graph()

GraphCutFS::Graph::~Graph ( )

Member Function Documentation

◆ add_edge()

void GraphCutFS::Graph::add_edge ( node_id  from,
node_id  to,
captype  cap,
captype  rev_cap 
)

◆ add_node()

Graph::node_id GraphCutFS::Graph::add_node ( )

◆ add_tweights()

void GraphCutFS::Graph::add_tweights ( node_id  i,
captype  cap_source,
captype  cap_sink 
)

◆ augment()

void GraphCutFS::Graph::augment ( node s_start,
node t_start,
captype cap_middle,
captype rev_cap_middle 
)

◆ maxflow()

Graph::flowtype GraphCutFS::Graph::maxflow ( )

◆ maxflow_init()

void GraphCutFS::Graph::maxflow_init ( )

◆ next_active()

Graph::node * GraphCutFS::Graph::next_active ( )
inline

◆ prepare_graph()

void GraphCutFS::Graph::prepare_graph ( )

◆ process_sink_orphan()

void GraphCutFS::Graph::process_sink_orphan ( node i)

◆ process_source_orphan()

void GraphCutFS::Graph::process_source_orphan ( node i)

◆ set_active()

void GraphCutFS::Graph::set_active ( node i)
inline

◆ set_tweights()

void GraphCutFS::Graph::set_tweights ( node_id  i,
captype  cap_source,
captype  cap_sink 
)

◆ what_segment()

Graph::termtype GraphCutFS::Graph::what_segment ( node_id  i)

Member Data Documentation

◆ arc_for_block_first

arc_for_block* GraphCutFS::Graph::arc_for_block_first

◆ arc_rev_block_first

arc_rev_block* GraphCutFS::Graph::arc_rev_block_first

◆ error_function

void(* GraphCutFS::Graph::error_function) (char *)

◆ flow

flowtype GraphCutFS::Graph::flow

◆ node_block_first

node_block* GraphCutFS::Graph::node_block_first

◆ nodeptr_block

DBlock<nodeptr>* GraphCutFS::Graph::nodeptr_block

◆ orphan_first

nodeptr* GraphCutFS::Graph::orphan_first

◆ orphan_last

nodeptr * GraphCutFS::Graph::orphan_last

◆ queue_first

node* GraphCutFS::Graph::queue_first[2]

◆ queue_last

node * GraphCutFS::Graph::queue_last[2]

◆ TIME

int GraphCutFS::Graph::TIME

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