Belle II Software development
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
12namespace 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 int apply(ContainerType &)
applies actual algorithm on parameter passed, returns some debugging results
virtual ValidatorType & getValidator()
getter
Abstract base class for different kinds of events.