Belle II Software  release-05-02-19
CDCTrackingEventLevelMdstInfoFillerModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2018 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Sasha Glazov *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 #pragma once
11 
12 #include <tracking/trackFindingCDC/eventdata/utils/ClassMnemomics.h>
13 
14 #include <tracking/trackFindingCDC/eventdata/hits/CDCWireHit.h>
15 #include <tracking/trackFindingCDC/eventdata/segments/CDCSegment2D.h>
16 #include <tracking/trackFindingCDC/findlets/base/FindletModule.h>
17 #include <tracking/trackFindingCDC/findlets/base/Findlet.h>
18 #include <framework/datastore/StoreObjPtr.h>
19 #include <mdst/dataobjects/EventLevelTrackingInfo.h>
20 
21 #include <vector>
22 #include <string>
23 
24 namespace Belle2 {
29  namespace TrackFindingCDC {
34  class CDCTrackingEventLevelMdstInfoFillerFindlet : public Findlet<const CDCWireHit, const CDCSegment2D> {
35  private:
37  using Super = Findlet<const CDCWireHit, const CDCSegment2D>;
38 
39  public:
41  std::string getDescription() final;
42 
44  void initialize() final;
45 
46  public:
48  void apply(const std::vector<CDCWireHit>& inputWireHits, const std::vector<CDCSegment2D>& inputWireHitSegments) final;
49 
50  private:
53  };
54 
62  public:
65  : FindletModule<CDCTrackingEventLevelMdstInfoFillerFindlet>( {"CDCWireHitVector", "CDCSegment2DVector"})
66  {
67  }
68  };
69  }
71 }
Belle2::TrackFindingCDC::CDCTrackingEventLevelMdstInfoFillerFindlet::apply
void apply(const std::vector< CDCWireHit > &inputWireHits, const std::vector< CDCSegment2D > &inputWireHitSegments) final
Main method to make the heavy lifting.
Definition: CDCTrackingEventLevelMdstInfoFillerModule.cc:31
Belle2::TrackFindingCDC::CDCTrackingEventLevelMdstInfoFillerFindlet
Findlet description.
Definition: CDCTrackingEventLevelMdstInfoFillerModule.h:42
Belle2::TrackFindingCDC::CDCTrackingEventLevelMdstInfoFillerFindlet::m_eventLevelTrackingInfo
StoreObjPtr< EventLevelTrackingInfo > m_eventLevelTrackingInfo
Acccess to the CDCTrackingEventLevelTrackingInfo object in the datastore.
Definition: CDCTrackingEventLevelMdstInfoFillerModule.h:60
Belle2::TrackFindingCDC::CDCTrackingEventLevelMdstInfoFillerFindlet::initialize
void initialize() final
Signal the begining of the event processing.
Definition: CDCTrackingEventLevelMdstInfoFillerModule.cc:24
Belle2::TrackFindingCDC::CDCTrackingEventLevelMdstInfoFillerModule
Module interface to the CDCTrackingEventLevelMdstInfoFillerFindlet.
Definition: CDCTrackingEventLevelMdstInfoFillerModule.h:69
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::StoreObjPtr
Type-safe access to single objects in the data store.
Definition: ParticleList.h:33
Belle2::EventLevelTrackingInfo
Tracking-related info on event-level, for example number of unassigned measurements.
Definition: EventLevelTrackingInfo.h:47
Belle2::TrackFindingCDC::CDCSegment2D
A reconstructed sequence of two dimensional hits in one super layer.
Definition: CDCSegment2D.h:40
Belle2::TrackFindingCDC::CDCTrackingEventLevelMdstInfoFillerFindlet::getDescription
std::string getDescription() final
Getter for the module description.
Definition: CDCTrackingEventLevelMdstInfoFillerModule.cc:19
Belle2::TrackFindingCDC::CDCWireHit
Class representing a hit wire in the central drift chamber.
Definition: CDCWireHit.h:65
Belle2::TrackFindingCDC::FindletModule
Adapter of a findlet to a module that exposes the parameters of the findlet and manages the IO with t...
Definition: FindletModule.h:40
Belle2::TrackFindingCDC::CDCTrackingEventLevelMdstInfoFillerFindlet::Super
Findlet< const CDCWireHit, const CDCSegment2D > Super
Type of the base class.
Definition: CDCTrackingEventLevelMdstInfoFillerModule.h:45