OpenMS
SingleLinkage.h
Go to the documentation of this file.
1 // Copyright (c) 2002-2023, The OpenMS Team -- EKU Tuebingen, ETH Zurich, and FU Berlin
2 // SPDX-License-Identifier: BSD-3-Clause
3 //
4 // --------------------------------------------------------------------------
5 // $Maintainer: Mathias Walzer $
6 // $Authors: $
7 // --------------------------------------------------------------------------
8 //
9 #pragma once
10 
11 #include <vector>
12 #include <set>
13 
17 
18 namespace OpenMS
19 {
29  class OPENMS_DLLAPI SingleLinkage :
30  public ClusterFunctor, public ProgressLogger
31  {
32 public:
33 
36 
38  SingleLinkage(const SingleLinkage & source);
39 
41  ~SingleLinkage() override;
42 
45 
56  void operator()(DistanceMatrix<float> & original_distance, std::vector<BinaryTreeNode> & cluster_tree, const float threshold = 1) const override;
57 
59  static ClusterFunctor * create();
60 
62  static const String getProductName();
63  };
64 
65 
66 
67 }
Base class for cluster functors.
Definition: ClusterFunctor.h:28
A two-dimensional distance matrix, similar to OpenMS::Matrix.
Definition: DistanceMatrix.h:42
Base class for all classes that want to report their progress.
Definition: ProgressLogger.h:27
SingleLinkage ClusterMethod.
Definition: SingleLinkage.h:31
SingleLinkage & operator=(const SingleLinkage &source)
assignment operator
SingleLinkage(const SingleLinkage &source)
copy constructor
SingleLinkage()
default constructor
void operator()(DistanceMatrix< float > &original_distance, std::vector< BinaryTreeNode > &cluster_tree, const float threshold=1) const override
clusters the indices according to their respective element distances
static ClusterFunctor * create()
creates a new instance of a SingleLinkage object
~SingleLinkage() override
destructor
static const String getProductName()
get the identifier for this object
A more convenient string class.
Definition: String.h:34
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:22