Belle II Software  release-08-01-10
TrackerAlgorithmBase.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 #pragma once
9 
10 #include <string>
11 
12 namespace Belle2 {
19  template<class ContainerType, class ValidatorType>
21  protected:
23  ValidatorType m_validator;
24 
25  public:
28  virtual ValidatorType& getValidator() { return m_validator; }
29 
31  virtual std::string printStatistics() { return ""; }
32 
35  virtual void setValidator(ValidatorType& aValidator) { m_validator = aValidator; }
36 
38  virtual int apply(ContainerType&) { return 0; }
39 
42  virtual unsigned int findSeeds(ContainerType&, bool) { return 0; }
43  };
45 }
base class for TrackerAlgorithms. shall allow a common base for algorithms like the cellular automato...
virtual std::string printStatistics()
returns current logging info of the algorithm (some stuff one wants to log about that algorithm
virtual void setValidator(ValidatorType &aValidator)
setter
virtual unsigned int findSeeds(ContainerType &, bool)
searches for seeds among the entries of parameter passed (bool sets strictnes for finding seeds),...
ValidatorType m_validator
something which checks the quality of the test so far (will be applied by the apply-function
virtual ValidatorType & getValidator()
getter
virtual int apply(ContainerType &)
applies actual algorithm on parameter passed, returns some debuging results
Abstract base class for different kinds of events.