10#include <tracking/trackFindingCDC/filters/base/Filter.fwd.h>
12#include <tracking/trackFindingCDC/varsets/BaseVarSet.h>
14#include <tracking/trackFindingCDC/numerics/Weight.h>
23 namespace TrackFindingCDC {
26 template<
class AFilter>
35 using Object =
typename AFilter::Object;
43 explicit OnVarSet(std::unique_ptr<AVarSet> varSet);
80#include <tracking/trackFindingCDC/filters/base/Filter.icc.h>
87 namespace TrackFindingCDC {
90 template<
class AVarSet>
The Module parameter list class.
Generic class that generates some named float values from a given object.
~FilterOnVarSet()
Default destructor.
typename AVarSet::Object Object
Type of the object to be analysed.
OnVarSet< Filter< typename AVarSet::Object > > Super
Type of the super class.
FilterOnVarSet()
Constructor of the filter.
void initialize() override
No reassignment of variable set possible for now.
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
AFilter Super
Type of the base class.
std::unique_ptr< AVarSet > releaseVarSet() &&
Steal the set of variables form this filter - filter becomes dysfunctional afterwards.
AVarSet & getVarSet() const
Getter for the set of variables.
typename AFilter::Object Object
Type of pbject to be filtered.
BaseVarSet< Object > AVarSet
Type of the variable set usedi in this filter.
void setVarSet(std::unique_ptr< AVarSet > varSet)
Setter for the set of variables.
OnVarSet(std::unique_ptr< AVarSet > varSet)
Constructor from the variable set the filter should use.
virtual void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Forward prefixed parameters of this findlet to the module parameter list.
~OnVarSet()
Default destructor.
Abstract base class for different kinds of events.