Belle II Software  release-08-01-10
Filter.icc.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 <tracking/trackFindingCDC/filters/base/Filter.dcl.h>
11 
12 #include <tracking/trackFindingCDC/numerics/Weight.h>
13 
14 #include <string>
15 #include <cmath>
16 
17 namespace Belle2 {
22  class ModuleParamList;
24 }
25 
26 namespace Belle2 {
31  namespace TrackFindingCDC {
32 
33  template<class AObject>
34  Filter<AObject>::Filter() = default;
35 
36  template<class AObject>
37  Filter<AObject>::~Filter() = default;
38 
39  template <class AObject>
40  void Filter<AObject>::exposeParameters(ModuleParamList* moduleParamListw __attribute__((unused)),
41  const std::string& prefix __attribute__((unused)))
42  {
43  }
44 
45  template <class AObject>
47  {
48  return false;
49  }
50 
51  template <class AObject>
52  Weight Filter<AObject>::operator()(const Object& obj __attribute__((unused)))
53  {
54  return 1;
55  }
56 
57  template <class AObject>
59  {
60  return obj ? operator()(*obj) : NAN;
61  }
62  }
64 }
The Module parameter list class.
Class representing a triple of reconstructed segements in adjacent superlayer.
virtual void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix)
Expose the set of parameters of the filter to the module parameter list.
Definition: Filter.icc.h:40
AObject Object
Type of the object to be analysed.
Definition: Filter.dcl.h:33
virtual Weight operator()(const Object &obj)
Function to evaluate the object.
Definition: Filter.icc.h:52
Filter()
Default constructor.
virtual bool needsTruthInformation()
Indicates if the filter requires Monte Carlo information.
Definition: Filter.icc.h:46
virtual ~Filter()
Make destructor of interface class virtual.
Abstract base class for different kinds of events.