BitMagic-C++
|
Public Types | |
typedef std::vector< std::unique_ptr< CSeqGroup > > | groups_vector_type |
Public Member Functions | |
CSeqClusters () | |
CSeqClusters (const CSeqClusters &)=delete | |
void | add_group (CSeqGroup *sg) |
More... | |
void | take_group (bm::bvector<> &bv_members) |
memebers moved into their own group More... | |
void | merge_from (CSeqClusters &sc) |
Acquire all groups from another cluster collection. More... | |
void | clear_empty_groups () |
Remove groups which turned empty after clusterization. More... | |
const bm::bvector & | union_all_groups () |
Compute union of all cluster group members. More... | |
void | resolve_duplicates (const CSequenceColl &seq_coll) |
Resolve duplicate membership between groups. More... | |
void | elect_leaders (const CSequenceColl &seq_coll, unsigned concurrency) |
Find the best representatives in all cluster groups the criteria is maximum absolute similarity to all members. More... | |
bm::id64_t | compute_avg_count () const |
calculate avg cluster population count More... | |
size_t | groups_size () const |
More... | |
CSeqGroup * | get_group (size_t idx) |
More... | |
void | print_summary (const char *title) const |
print clusterization report More... | |
Definition at line 757 of file xsample07a.cpp.
|
inline |
Definition at line 766 of file xsample07a.cpp.
Referenced by compute_random_clusters(), and take_group().
void CSeqClusters::clear_empty_groups | ( | ) |
Remove groups which turned empty after clusterization.
Definition at line 807 of file xsample07a.cpp.
References bm::bvector< Alloc >::count(), and CSeqGroup::get_members().
Referenced by compute_jaccard_clusters().
bm::id64_t CSeqClusters::compute_avg_count | ( | ) | const |
calculate avg cluster population count
Definition at line 847 of file xsample07a.cpp.
References bm::bvector< Alloc >::count(), and CSeqGroup::get_members().
Referenced by compute_jaccard_clusters().
void CSeqClusters::elect_leaders | ( | const CSequenceColl & | seq_coll, |
unsigned | concurrency | ||
) |
Find the best representatives in all cluster groups the criteria is maximum absolute similarity to all members.
Definition at line 994 of file xsample07a.cpp.
References bm::bvector< Alloc >::clear(), compute_and_sim(), compute_seq_group_union(), bm::bvector< Alloc >::count(), bm::bvector< Alloc >::count_range(), bm::deserialize(), bm::bvector< Alloc >::first(), CSequenceColl::get_buf(), CSeqGroup::get_lead(), CSeqGroup::get_members(), CSeqGroup::get_rep(), bm::random_subset< BV >::sample(), bm::bvector< Alloc >::set(), CSeqGroup::set_lead(), bm::bvector< Alloc >::test(), and bm::bvector< Alloc >::iterator_base::valid().
Referenced by compute_jaccard_clusters().
|
inline |
Definition at line 796 of file xsample07a.cpp.
Referenced by assign_to_best_cluster(), and assign_to_best_cluster_union().
|
inline |
Definition at line 795 of file xsample07a.cpp.
Referenced by assign_to_best_cluster(), and assign_to_best_cluster_union().
void CSeqClusters::merge_from | ( | CSeqClusters & | sc | ) |
Acquire all groups from another cluster collection.
Definition at line 861 of file xsample07a.cpp.
Referenced by compute_jaccard_clusters().
void CSeqClusters::print_summary | ( | const char * | title | ) | const |
print clusterization report
Definition at line 1087 of file xsample07a.cpp.
References bm::bvector< Alloc >::count(), CSeqGroup::get_lead(), and CSeqGroup::get_members().
Referenced by compute_jaccard_clusters().
void CSeqClusters::resolve_duplicates | ( | const CSequenceColl & | seq_coll | ) |
Resolve duplicate membership between groups.
Definition at line 873 of file xsample07a.cpp.
References resolve_duplicates().
Referenced by compute_jaccard_clusters(), and resolve_duplicates().
void CSeqClusters::take_group | ( | bm::bvector<> & | bv_members | ) |
memebers moved into their own group
Definition at line 822 of file xsample07a.cpp.
References add_group(), bm::bvector< Alloc >::get_first(), CSeqGroup::get_members(), and bm::bvector< Alloc >::swap().
Referenced by compute_jaccard_clusters().
const bm::bvector & CSeqClusters::union_all_groups | ( | ) |
Compute union of all cluster group members.
Definition at line 830 of file xsample07a.cpp.
References bm::aggregator< BV >::add(), bm::bvector< Alloc >::clear(), bm::aggregator< BV >::combine_or(), CSeqGroup::get_members(), bm::aggregator< BV >::reset(), and bm::aggregator< BV >::set_optimization().
Referenced by compute_jaccard_clusters().