ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
CP::CutPursuit< T > Struct Template Reference

#include <CutPursuit.h>

Inheritance diagram for CP::CutPursuit< T >:
Collaboration diagram for CP::CutPursuit< T >:

Public Member Functions

 CutPursuit (uint32_t nbVertex=1)
 
std::pair< std::vector< T >, std::vector< T > > run ()
 
virtual size_t split ()
 
virtual std::pair< T, T > compute_energy ()
 
virtual std::pair< std::vector< T >, T > compute_value (const uint32_t &ind_com)
 
virtual std::pair< std::vector< T >, T > compute_merge_gain (const VertexDescriptor< T > &comp1, const VertexDescriptor< T > &comp2)
 
void initialize ()
 
void compute_reduced_value ()
 
size_t activate_edges (bool allows_saturation=true)
 
void reduce ()
 
void compute_connected_components ()
 
std::vector< VertexDescriptor< T > > connected_comp_from_root (const VertexDescriptor< T > &root, const size_t &size_comp, std::vector< bool > &vertices_seen, std::vector< bool > &edges_seen)
 
void compute_reduced_graph ()
 
uint32_t merge (bool is_cutoff)
 
void cutoff ()
 
void saturateComponent (const uint32_t &ind_com)
 

Public Attributes

Graph< T > main_graph
 
Graph< T > reduced_graph
 
std::vector< std::vector< VertexDescriptor< T > > > components
 
std::vector< VertexDescriptor< T > > root_vertex
 
std::vector< bool > saturated_components
 
std::vector< std::vector< EdgeDescriptor > > borders
 
VertexDescriptor< T > source
 
VertexDescriptor< T > sink
 
uint32_t dim
 
uint32_t nVertex
 
uint32_t nEdge
 
CP::VertexIterator< T > lastIterator
 
CPparameter< T > parameter
 

Detailed Description

template<typename T>
struct CP::CutPursuit< T >

Definition at line 44 of file CutPursuit.h.

Constructor & Destructor Documentation

◆ CutPursuit()

Member Function Documentation

◆ activate_edges()

◆ compute_connected_components()

◆ compute_energy()

template<typename T >
virtual std::pair<T, T> CP::CutPursuit< T >::compute_energy ( )
inlinevirtual

◆ compute_merge_gain()

template<typename T >
virtual std::pair<std::vector<T>, T> CP::CutPursuit< T >::compute_merge_gain ( const VertexDescriptor< T > &  comp1,
const VertexDescriptor< T > &  comp2 
)
inlinevirtual

◆ compute_reduced_graph()

◆ compute_reduced_value()

template<typename T >
void CP::CutPursuit< T >::compute_reduced_value ( )
inline

◆ compute_value()

template<typename T >
virtual std::pair<std::vector<T>, T> CP::CutPursuit< T >::compute_value ( const uint32_t &  ind_com)
inlinevirtual

◆ connected_comp_from_root()

template<typename T >
std::vector<VertexDescriptor<T> > CP::CutPursuit< T >::connected_comp_from_root ( const VertexDescriptor< T > &  root,
const size_t &  size_comp,
std::vector< bool > &  vertices_seen,
std::vector< bool > &  edges_seen 
)
inline

Definition at line 468 of file CutPursuit.h.

References vertex_index.

Referenced by CP::CutPursuit< T >::compute_connected_components().

◆ cutoff()

template<typename T >
void CP::CutPursuit< T >::cutoff ( )
inline

◆ initialize()

template<typename T >
void CP::CutPursuit< T >::initialize ( )
inline

◆ merge()

◆ reduce()

◆ run()

◆ saturateComponent()

template<typename T >
void CP::CutPursuit< T >::saturateComponent ( const uint32_t &  ind_com)
inline

◆ split()

template<typename T >
virtual size_t CP::CutPursuit< T >::split ( )
inlinevirtual

Member Data Documentation

◆ borders

template<typename T >
std::vector<std::vector<EdgeDescriptor> > CP::CutPursuit< T >::borders

◆ components

◆ dim

◆ lastIterator

◆ main_graph

◆ nEdge

template<typename T >
uint32_t CP::CutPursuit< T >::nEdge

Definition at line 61 of file CutPursuit.h.

◆ nVertex

◆ parameter

◆ reduced_graph

◆ root_vertex

◆ saturated_components

◆ sink

◆ source


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