 |
Belle II Software
release-05-02-19
|
12 #include <tracking/trackFindingCDC/filters/base/Filter.fwd.h>
14 #include <tracking/trackFindingCDC/varsets/BaseVarSet.h>
16 #include <tracking/trackFindingCDC/numerics/Weight.h>
25 namespace TrackFindingCDC {
28 template<
class AFilter>
29 class OnVarSet :
public AFilter {
33 using Super = AFilter;
37 using Object =
typename AFilter::Object;
45 explicit OnVarSet(std::unique_ptr<AVarSet> varSet);
69 void setVarSet(std::unique_ptr<AVarSet> varSet);
79 #include <tracking/trackFindingCDC/filters/base/Filter.icc.h>
86 namespace TrackFindingCDC {
89 template<
class AVarSet>
~FilterOnVarSet()
Default destructor.
bool needsTruthInformation() override
Checks if any variables need Monte Carlo information.
Weight operator()(const Object &obj) override
Function extracting the variables of the object into the variable set.
std::unique_ptr< AVarSet > m_varSet
Instance of the variable set to be used in the filter.
typename AFilter::Object Object
Type of pbject to be filtered.
OnVarSet(std::unique_ptr< AVarSet > varSet)
Constructor from the variable set the filter should use.
FilterOnVarSet()
Constructor of the filter.
AVarSet & getVarSet() const
Getter for the set of variables.
Interface for an algorithm part that needs to receive the module processing signals.
void initialize() override
No reassignment of variable set possible for now.
Convience template to create a filter operating on a specific set of variables.
~OnVarSet()
Default destructor.
Abstract base class for different kinds of events.
std::unique_ptr< AVarSet > releaseVarSet() &&
Steal the set of variables form this filter - filter becomes disfunctional afterwards.
void setVarSet(std::unique_ptr< AVarSet > varSet)
Setter for the set of variables.
Filter adapter to make a filter work on a set of variables.
Object Object
Object type from which variables shall be extracted.
AFilter Super
Type of the base class.
AVarSet::Object Object
Type of the object to be analysed.