IMP  2.0.0
The Integrative Modeling Platform
RecursivePartitionalClusteringMetric.h
Go to the documentation of this file.
1 /**
2  * \file IMP/statistics/RecursivePartitionalClusteringMetric.h
3  * \brief Cluster sets of points.
4  *
5  * Copyright 2007-2013 IMP Inventors. All rights reserved.
6  *
7  */
8 
9 #ifndef IMPSTATISTICS_RECURSIVE_PARTITIONAL_CLUSTERING_METRIC_H
10 #define IMPSTATISTICS_RECURSIVE_PARTITIONAL_CLUSTERING_METRIC_H
11 
12 #include <IMP/statistics/statistics_config.h>
13 #include "metric_macros.h"
14 #include "Metric.h"
15 #include "PartitionalClustering.h"
16 
17 IMPSTATISTICS_BEGIN_NAMESPACE
18 
19 
20 /** Represent a metric for clustering data that has already been clustered
21  once. To use it, cluster things once, create one of these with the metric
22  you want (created with the original data). When you pass this metric to
23  the clustering algorithm, it will cluster the centers. You can extract the
24  clustering of the original elements using create_full_clustering().
25 */
26 class IMPSTATISTICSEXPORT RecursivePartitionalClusteringMetric: public Metric {
27  IMP::OwnerPointer<Metric> metric_;
28  IMP::OwnerPointer<PartitionalClustering> clustering_;
29  public:
31  PartitionalClustering *clustering);
33  create_full_clustering(PartitionalClustering *center_cluster);
35 };
36 
37 
38 IMPSTATISTICS_END_NAMESPACE
39 
40 #endif /* IMPSTATISTICS_RECURSIVE_PARTITIONAL_CLUSTERING_METRIC_H */