Belle II Software development
NonIPCrossingStateFilter.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/numerics/EForwardBackward.h>
11#include <string>
12
13namespace Belle2 {
18 class ModuleParamList;
19
30 template <class AllStateFilter>
31 class NonIPCrossingStateFilter : public AllStateFilter {
33 using Object = typename AllStateFilter::Object;
35 using Super = AllStateFilter;
36 public:
38 TrackFindingCDC::Weight operator()(const Object& pair) final;
39
41 void exposeParameters(ModuleParamList* moduleParamList, const std::string& prefix) override;
42
44 void initialize() final;
45
46 private:
48 std::string m_param_directionAsString = "unknown";
50 TrackFindingCDC::EForwardBackward m_param_direction = TrackFindingCDC::EForwardBackward::c_Unknown;
51 };
53}
The Module parameter list class.
Reusable filter for checking the direction of a new state if it is in the correct orientation (forwar...
typename AllStateFilter::Object Object
The object to filter.
TrackFindingCDC::EForwardBackward m_param_direction
Direction parameter converted from the string parameters.
AllStateFilter Super
The parent class.
std::string m_param_directionAsString
Parameter for the distance given to the framework (can not handle EForwardBackward directly)
TrackFindingCDC::Weight operator()(const Object &pair) final
Main function testing the object for the direction.
void initialize() final
Copy the string direction parameter to the enum.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) override
Expose the direction parameter.
Abstract base class for different kinds of events.
STL namespace.