Belle II Software development
Filter.dcl.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.fwd.h>
11
12#include <tracking/trackFindingCDC/utilities/CompositeProcessingSignalListener.h>
13
14#include <tracking/trackFindingCDC/numerics/Weight.h>
15
16#include <string>
17
18#include <vector>
19
20namespace Belle2 {
25 class ModuleParamList;
26
27 namespace TrackFindingCDC {
28
30 template<class AObject>
32
33 public:
35 using Object = AObject;
36
39
40 public:
43
45 virtual ~Filter();
46
54 virtual void exposeParameters(ModuleParamList* moduleParamList, const std::string& prefix);
55
57 virtual bool needsTruthInformation();
58
59 public:
68 virtual Weight operator()(const Object& obj);
69
78 Weight operator()(const Object* obj);
79
86 virtual std::vector<float> operator()(const std::vector <Object*>& objs);
87 };
88 }
90}
The Module parameter list class.
Partial implemenation for an algorithm part that wants to dispatch processing signals to subobjects.
Base class for filters on a generic object type.
Definition: Filter.dcl.h:31
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:35
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.