Belle II Software development
MCSegmentRelationFilter.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/segmentRelation/BaseSegmentRelationFilter.h>
11
12#include <tracking/trackFindingCDC/filters/base/MCSymmetricFilter.dcl.h>
13
14namespace Belle2 {
20 namespace TrackFindingCDC {
21
23 class MCSegmentRelationFilter : public MCSymmetric<BaseSegmentRelationFilter> {
24
25 private:
28
29 public:
31 explicit MCSegmentRelationFilter(bool allowReverse = true);
32
34 void exposeParameters(ModuleParamList* moduleParamList, const std::string& prefix) final;
35
37 using Super::operator();
38
39 private:
42
44 Weight operator()(const CDCSegment2D& fromSegment, const CDCSegment2D& toSegment) final;
45 };
46 }
48}
The Module parameter list class.
A reconstructed sequence of two dimensional hits in one super layer.
Definition: CDCSegment2D.h:39
Filter for the construction of segment relations based on MC information.
bool m_param_requireRLPure
Parameter : Switch to require the segment combination contain mostly correct rl information.
Weight operator()(const CDCSegment2D &fromSegment, const CDCSegment2D &toSegment) final
Checks if a segment relation is a good combination.
void exposeParameters(ModuleParamList *moduleParamList, const std::string &prefix) final
Expose the set of parameters of the filter to the module parameter list.
Mixin for filters that use Monte Carlo information.
Abstract base class for different kinds of events.