IMP
2.0.0
The Integrative Modeling Platform
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
clustering_macros.h
Go to the documentation of this file.
1
/**
2
* \file IMP/statistics/clustering_macros.h \brief Various important macros
3
* for implementing decorators.
4
*
5
* Copyright 2007-2013 IMP Inventors. All rights reserved.
6
*
7
*/
8
9
#ifndef IMPSTATISTICS_CLUSTERING_MACROS_H
10
#define IMPSTATISTICS_CLUSTERING_MACROS_H
11
12
#include "
embedding_macros.h
"
13
#include <
IMP/base/object_macros.h
>
14
15
//! Define things needed for a Metric
16
/** In addition to what is done by IMP_OBJECT() it declares
17
- IMP::statistics::Distance::get_embedding()
18
*/
19
#define IMP_METRIC(Name) \
20
double get_distance(unsigned int i, \
21
unsigned int j) const; \
22
unsigned int get_number_of_items() const; \
23
IMP_OBJECT(Name)
24
25
26
//! Define the methods needed by Clustering
27
/** In addition to what is defined/declared by IMP_OBJECT() it declares
28
- IMP::statistics::Clustering::get_number_of_clusters()
29
- IMP::statistics::Clustering::get_cluster()
30
- IMP::statistics::Clustering::get_cluster_representative()
31
*/
32
#define IMP_CLUSTERING(Name) \
33
unsigned int get_number_of_clusters() const; \
34
const Ints& get_cluster(unsigned int i) const; \
35
int get_cluster_representative(unsigned int i) const; \
36
IMP_OBJECT(Name)
37
38
#endif
/* IMPSTATISTICS_CLUSTERING_MACROS_H */