CMS 3D CMS Logo

TTClusterAlgorithm.h
Go to the documentation of this file.
1 
15 #ifndef L1_TRACK_TRIGGER_CLUSTER_ALGO_BASE_H
16 #define L1_TRACK_TRIGGER_CLUSTER_ALGO_BASE_H
17 
18 #include <sstream>
19 #include <map>
20 #include <string>
21 #include "classNameFinder.h"
24 
25 template <typename T>
27 protected:
30 
31 public:
33 
34  TTClusterAlgorithm(std::string fName) { className_ = classNameFinder<T>(fName); }
35 
37  virtual ~TTClusterAlgorithm() {}
38 
41  virtual void Cluster(std::vector<std::vector<T> > &output, const std::vector<T> &input, bool module) const {
42  Cluster(output, input);
43  }
44 
46  virtual void Cluster(std::vector<std::vector<T> > &output, const std::vector<T> &input) const { output.clear(); }
47 
60 
62  virtual std::string AlgorithmName() const { return className_; }
63 
64 };
65 
66 #endif
TTClusterAlgorithm(std::string fName)
Constructors.
static std::string const input
Definition: EdmProvDump.cc:48
virtual void Cluster(std::vector< std::vector< T > > &output, const std::vector< T > &input) const
Basic version common to all the algorithms but official.
std::string className_
Data members.
Base class for any algorithm to be used in TTClusterBuilder.
virtual void Cluster(std::vector< std::vector< T > > &output, const std::vector< T > &input, bool module) const
virtual std::string AlgorithmName() const
Algorithm name.
Definition: vlib.h:198
virtual ~TTClusterAlgorithm()
Destructor.