Belle II Software  release-06-02-00
CDCDedxElectronCollectorModule.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 
9 #pragma once
10 
11 #include <vector>
12 
13 #include <calibration/CalibrationCollectorModule.h>
14 #include <mdst/dataobjects/SoftwareTriggerResult.h>
15 #include <reconstruction/dataobjects/CDCDedxTrack.h>
16 #include <mdst/dataobjects/Track.h>
17 #include <mdst/dataobjects/TrackFitResult.h>
18 #include <framework/datastore/StoreArray.h>
19 
20 #include <reconstruction/dbobjects/CDCDedxWireGain.h>
21 
22 namespace Belle2 {
32 
33  public:
34 
39 
43  virtual void prepare() override;
44 
48  virtual void collect() override;
49 
53  void setEoverPCutValue(double value) {fSetEoverP = value;}
54 
55 
56  private:
60  bool m_cuts;
71  double fSetEoverP;
73  double m_dedx = -1;
74  double m_costh = -1;
75  double m_p = -1;
76  int m_charge = 0;
77  int m_run = 1;
78  int m_nhits = -1;
81  std::vector<int> m_wire;
82  std::vector<int> m_layer;
83  std::vector<double> m_doca;
84  std::vector<double> m_enta;
85  std::vector<double> m_docaRS;
86  std::vector<double> m_entaRS;
87  std::vector<double> m_dedxhit;
90  bool IsCosth;
91  bool IsMom;
92  bool IsCharge;
93  bool IsRun;
94  bool IsWire;
95  bool IsLayer;
96  bool IsDoca;
97  bool IsEnta;
98  bool IsDocaRS;
99  bool IsEntaRS;
100  bool Isdedxhit;
101  bool IsBhabhaEvt;
104  };
106 }
A collector module for CDC dE/dx electron calibrations.
bool IsWire
flag to write wire number in tree
void setEoverPCutValue(double value)
Set range for EoP cut.
std::vector< int > m_wire
hit level information
std::vector< int > m_layer
continuous layer number for the hit
StoreArray< TrackFitResult > m_trackFitResults
Required array for TrackFitResults.
std::vector< double > m_dedxhit
dE/dx for the hit
std::vector< double > m_doca
distance of closest approach for the hit
bool IsDocaRS
flag to write rescaled doca in tree
int m_nhits
number of dE/dx hits on the track
virtual void collect() override
Fill ROOT objects.
StoreArray< Track > m_tracks
Required array for Tracks.
bool enableTrgSel
flag to enable trigger skim selected in the module (off deafult)
bool IsLayer
flag to write layer number in tree
bool IsRun
flag to write run number in tree
virtual void prepare() override
Create and book ROOT objects.
DBObjPtr< CDCDedxWireGain > m_DBWireGains
Wire gain DB object.
CDCDedxElectronCollectorModule()
Constructor: Sets the description, the properties and the parameters of the module.
bool IsEntaRS
flag to write rescaled enta in tree
std::vector< double > m_entaRS
rescaled entrance angle for the hit
std::vector< double > m_enta
entrance angle for the hit
StoreArray< CDCDedxTrack > m_dedxTracks
Required array for CDCDedxTracks.
std::vector< double > m_docaRS
rescaled distance of closest approach for the hit
StoreObjPtr< SoftwareTriggerResult > m_TrgResult
required input
Calibration collector module base class.
Class for accessing objects in the database.
Definition: DBObjPtr.h:21
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
Type-safe access to single objects in the data store.
Definition: StoreObjPtr.h:95
Abstract base class for different kinds of events.