Belle II Software development
CDCTrackingEventLevelMdstInfoFiller.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/trackingUtilities/eventdata/utils/ClassMnemomics.h>
11
12#include <tracking/trackingUtilities/eventdata/hits/CDCWireHit.h>
13#include <tracking/trackingUtilities/eventdata/segments/CDCSegment2D.h>
14#include <tracking/trackingUtilities/findlets/base/FindletModule.h>
15#include <tracking/trackingUtilities/findlets/base/Findlet.h>
16#include <framework/datastore/StoreObjPtr.h>
17#include <mdst/dataobjects/EventLevelTrackingInfo.h>
18
19#include <vector>
20#include <string>
21
22namespace Belle2 {
27 namespace TrackFindingCDC {
31 class CDCTrackingEventLevelMdstInfoFillerFromHitsFindlet : public TrackingUtilities::Findlet<const TrackingUtilities::CDCWireHit> {
32 private:
35
36 public:
38 std::string getDescription() final;
39
41 void initialize() final;
42
43 public:
45 void apply(const std::vector<TrackingUtilities::CDCWireHit>& inputWireHits) final;
46
47 private:
50 };
51
56 TrackingUtilities::Findlet<const TrackingUtilities::CDCSegment2D> {
57 private:
60
61 public:
63 std::string getDescription() final;
64
66 void initialize() final;
67
68 public:
70 void apply(const std::vector<TrackingUtilities::CDCSegment2D>& inputSegment2Ds) final;
71
72 private:
75 };
76
89
94 TrackingUtilities::FindletModule<CDCTrackingEventLevelMdstInfoFillerFromSegmentsFindlet> {
95 public:
101 };
102 }
104}
Tracking-related info on event-level, for example number of unassigned measurements.
Type-safe access to single objects in the data store.
Definition StoreObjPtr.h:96
Findlet for storing in mdsts some hit-based information per event.
void apply(const std::vector< TrackingUtilities::CDCWireHit > &inputWireHits) final
Main method to make the heavy lifting.
StoreObjPtr< EventLevelTrackingInfo > m_eventLevelTrackingInfo
Access to the EventLevelTrackingInfo object in the datastore.
TrackingUtilities::Findlet< const TrackingUtilities::CDCWireHit > Super
Type of the base class.
CDCTrackingEventLevelMdstInfoFillerFromHitsModule()
Constructor setting up the default store array names.
Findlet for storing in mdsts some segment-based information per event.
TrackingUtilities::Findlet< const TrackingUtilities::CDCSegment2D > Super
Type of the base class.
StoreObjPtr< EventLevelTrackingInfo > m_eventLevelTrackingInfo
Access to the EventLevelTrackingInfo object in the datastore.
void apply(const std::vector< TrackingUtilities::CDCSegment2D > &inputSegment2Ds) final
Main method to make the heavy lifting.
CDCTrackingEventLevelMdstInfoFillerFromSegmentsModule()
Constructor setting up the default store array names.
Class representing a hit wire in the central drift chamber.
Definition CDCWireHit.h:58
Adapter of a findlet to a module that exposes the parameters of the findlet and manages the IO with t...
FindletModule(const std::array< std::string, c_nTypes > &storeVectorNames={})
Interface for a minimal algorithm part that wants to expose some parameters to a module.
Definition Findlet.h:26
STL class.
Abstract base class for different kinds of events.
STL namespace.