HLIBpro  2.8.1
TBCBuilder Class Reference

Recursively build block cluster tree with supplied admissibility condition.

#include <TBCBuilder.hh>

Public Member Functions

 TBCBuilder (const uint min_lvl=0, const cluster_level_mode_t cl_lvl_mode=CFG::Cluster::cluster_level_mode)
 construct block cluster tree builder
virtual ~TBCBuilder ()
virtual std::unique_ptr< TBlockClusterTreebuild (const TClusterTree *rowct, const TClusterTree *colct, const TAdmCondition *ac) const
virtual void refine (TBlockCluster *bc) const
 refine given block cluster

Protected Member Functions

virtual void rec_build (TBlockCluster *bc, const TAdmCondition *ac, const uint level) const
 recusivly build a block cluster tree for rowcl × colcl
virtual std::unique_ptr< TBlockClustercreate_bc (TBlockCluster *parent) const
 create new node in tree with father node parent
virtual std::unique_ptr< TBlockClustercreate_bc (TBlockCluster *parent, TCluster *rowcl, TCluster *colcl) const
 create new node in tree with father node parent and given row/col clusters

Member Function Documentation

◆ build()

virtual std::unique_ptr< TBlockClusterTree > build ( const TClusterTree rowct,
const TClusterTree colct,
const TAdmCondition ac 
) const

build block cluster tree for rowct × colct with admissibility condition ac