Belle II Software development
CDCDedxHadronCollectorModule.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
12#include <calibration/CalibrationCollectorModule.h>
13
14#include <mdst/dataobjects/SoftwareTriggerResult.h>
15#include <mdst/dataobjects/EventLevelTriggerTimeInfo.h>
16#include <mdst/dataobjects/Track.h>
17#include <mdst/dataobjects/TrackFitResult.h>
18#include <mdst/dataobjects/ECLCluster.h>
19#include <mdst/dataobjects/PIDLikelihood.h>
20
21#include <framework/datastore/StoreArray.h>
22#include <framework/dataobjects/EventMetaData.h>
23
24#include <cdc/dataobjects/CDCDedxTrack.h>
25#include <cdc/dbobjects/CDCDedxWireGain.h>
26
27#include <analysis/dataobjects/ParticleList.h>
28#include <analysis/dataobjects/Particle.h>
29#include <analysis/utility/ReferenceFrame.h>
30
31#include <cdc/dbobjects/CDCDedxInjectionTime.h>
32
33#include <TTree.h>
34#include <TString.h>
35#include <TH1D.h>
36#include <TH1I.h>
37#include <TMath.h>
38#include <vector>
39
40namespace Belle2 {
51
52 public:
53
58
62 virtual void prepare() override;
63
67 virtual void collect() override;
68
69
70 private:
74 std::vector<std::string> m_strParticleList;
76 std::map<std::string, std::string> m_pdgMap;
79 double m_minCut;
80 double m_maxCut;
83 double m_dedx{ -1};
84 double m_dedxnosat{ -1};
85 double m_costh{ -1};
86 double m_p{ -1};
87 int m_charge{0};
88 int m_nhits{ -1};
91 double m_injRing{ -1};
92 double m_injTime{ -1};
93 double m_timeReso{ -1};
97 };
99}
A collector module for CDC dE/dx hadron calibrations.
std::map< std::string, std::string > m_pdgMap
map to relate input strings to the right particle type
double m_maxCut
high cut dedx curve for proton sample
int m_nhits
number of dE/dx hits on the track
virtual void collect() override
Fill ROOT objects.
double m_timeReso
injection time resolution
virtual void prepare() override
Create and book ROOT objects.
double m_dedxnosat
dE/dx truncated mean no-saturation
CDCDedxHadronCollectorModule()
Constructor: Sets the description, the properties and the parameters of the module.
DBObjPtr< CDCDedxInjectionTime > m_DBInjectTime
Injection time DB object.
std::vector< std::string > m_strParticleList
Hadron collector variables.
Calibration collector module base class.
Class for accessing objects in the database.
Definition: DBObjPtr.h:21
Abstract base class for different kinds of events.