hpstr
The Heavy Photon Search Toolkit for Reconstruction (hpstr) provides an interface to physics data from the HPS experiment saved in the LCIO format and converts it into an ROOT based format.
Toggle main menu visibility
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
z
Functions
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
z
Enumerations
Enumerator
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
z
~
Variables
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
Enumerations
Enumerator
Files
File List
File Members
All
c
d
f
i
j
l
m
n
p
r
s
u
Functions
c
d
f
i
m
n
r
s
u
Variables
Typedefs
Macros
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
Loading...
Searching...
No Matches
processors
include
TrackEfficiencyProcessor.h
Go to the documentation of this file.
1
#ifndef __TRACK_EFFICIENCYPROCESSOR_H__
2
#define __TRACK_EFFICIENCYPROCESSOR_H__
3
4
5
//HPSTR
6
#include "
HpsEvent.h
"
7
#include "
Collections.h
"
8
#include "
EventHeader.h
"
9
#include "
Vertex.h
"
10
#include "
CalCluster.h
"
11
#include "
Track.h
"
12
#include "
TrackerHit.h
"
13
#include "
Particle.h
"
14
#include "
Processor.h
"
15
#include "
BaseSelector.h
"
16
#include "
TrackEfficHistos.h
"
17
#include "
ThreeProngHistos.h
"
18
#include "
FlatTupleMaker.h
"
19
//#include "AnaHelpers.h"
20
21
22
//ROOT
23
#include "TFile.h"
24
#include "TTree.h"
25
#include "TBranch.h"
26
#include "TVector3.h"
27
28
//C++
29
#include <memory>
30
31
class
TrackEfficiencyProcessor
:
public
Processor
{
32
33
public
:
34
TrackEfficiencyProcessor
(
const
std::string& name,
Process
&
process
);
35
~TrackEfficiencyProcessor
();
36
virtual
bool
process
(
IEvent
* ievent);
37
38
virtual
void
initialize
(TTree* tree);
39
40
virtual
void
finalize
();
41
42
virtual
void
configure
(
const
ParameterSet
& parameters);
43
44
private
:
45
46
std::shared_ptr<BaseSelector>
cluSelector
;
47
std::shared_ptr<BaseSelector>
trkSelector
;
48
std::vector<std::string>
regionSelections_
;
49
std::vector<std::string>
threeProngSelections_
;
50
51
std::string
selectionCfg_
;
52
std::string
trkSelCfg_
;
53
std::string
cluSelCfg_
;
54
55
56
TBranch*
bfspart_
{
nullptr
};
57
TBranch*
bclus_
{
nullptr
};
58
TBranch*
btrks_
{
nullptr
};
59
TBranch*
bevth_
{
nullptr
};
60
61
std::vector<CalCluster*> *
clus_
{};
62
std::vector<Particle*> *
fspart_
{};
63
std::vector<Track*> *
trks_
{};
64
EventHeader
*
evth_
{
nullptr
};
65
66
std::string
anaName_
{
"trkEffAna"
};
67
std::string
cluColl_
{
"ECalClusters"
};
68
std::string
fspartColl_
{
"FinalStateParticles"
};
69
std::string
trkColl_
{
"GBLTracks"
};
70
TTree*
tree_
{
nullptr
};
71
72
std::shared_ptr<TrackEfficHistos>
_trkeff_histos
;
73
74
std::map<std::string, std::shared_ptr<BaseSelector> >
_reg_trkeff_selectors
;
75
std::map<std::string, std::shared_ptr<TrackEfficHistos> >
_reg_trkeff_histos
;
76
std::vector<std::string>
_regions
;
77
78
std::map<std::string, std::shared_ptr<BaseSelector> >
_reg_three_prong_trkeff_selectors
;
79
std::map<std::string, std::shared_ptr<ThreeProngHistos> >
_reg_three_prong_trkeff_histos
;
80
std::vector<std::string>
_three_prong_regions
;
81
82
83
typedef
std::map<std::string,std::shared_ptr<TrackEfficHistos> >::iterator
reg_it
;
84
typedef
std::map<std::string,std::shared_ptr<ThreeProngHistos> >::iterator
three_prong_reg_it
;
85
86
std::string
histoCfg_
{
""
};
87
std::string
thrProngCfg_
{
""
};
88
std::string
cluHistoCfg_
{
""
};
89
double
timeOffset_
{-999};
90
//In GeV. Default is 2016 value;
91
double
beamE_
{2.3};
92
int
isData
{0};
93
std::shared_ptr<AnaHelpers>
_ah
;
94
/*
95
struct TridentCand{
96
std::pair<CalCluster*,Track*> ele;
97
std::pair<CalCluster*,Track*> pos;
98
};
99
*/
100
struct
TridentCand
{
101
Particle
*
ele
;
102
Particle
*
pos
;
103
};
100
struct
TridentCand
{
…
};
104
105
struct
ThreeProngCand
{
106
Particle
*
ele
;
107
Particle
*
pos
;
108
Particle
*
recoil
;
109
};
105
struct
ThreeProngCand
{
…
};
110
111
//Debug level
112
int
debug_
{0};
113
};
31
class
TrackEfficiencyProcessor
:
public
Processor
{
…
};
114
115
#endif
BaseSelector.h
CalCluster.h
Collections.h
EventHeader.h
Class used to encapsulate event information.
FlatTupleMaker.h
HpsEvent.h
Particle.h
Class used to encapsulate information about a particle.
Processor.h
Base classes for all user event processing components to extend.
ThreeProngHistos.h
TrackEfficHistos.h
Track.h
Class used to encapsulate track information.
TrackerHit.h
Class used to encapsulate tracker hit information.
Vertex.h
Class used to encapsulate Vertex information.
EventHeader
Definition
EventHeader.h:22
IEvent
Definition
IEvent.h:7
ParameterSet
description
Definition
ParameterSet.h:22
Particle
Definition
Particle.h:24
Process
Definition
Process.h:29
Processor
Base class for all event processing components.
Definition
Processor.h:34
Processor::process
virtual bool process()
Process the histograms and generate analysis output.
Definition
Processor.h:95
TrackEfficiencyProcessor
Definition
TrackEfficiencyProcessor.h:31
TrackEfficiencyProcessor::histoCfg_
std::string histoCfg_
Definition
TrackEfficiencyProcessor.h:86
TrackEfficiencyProcessor::_trkeff_histos
std::shared_ptr< TrackEfficHistos > _trkeff_histos
Definition
TrackEfficiencyProcessor.h:72
TrackEfficiencyProcessor::debug_
int debug_
Definition
TrackEfficiencyProcessor.h:112
TrackEfficiencyProcessor::timeOffset_
double timeOffset_
Definition
TrackEfficiencyProcessor.h:89
TrackEfficiencyProcessor::selectionCfg_
std::string selectionCfg_
Definition
TrackEfficiencyProcessor.h:51
TrackEfficiencyProcessor::anaName_
std::string anaName_
Definition
TrackEfficiencyProcessor.h:66
TrackEfficiencyProcessor::~TrackEfficiencyProcessor
~TrackEfficiencyProcessor()
Definition
TrackEfficiencyProcessor.cxx:17
TrackEfficiencyProcessor::configure
virtual void configure(const ParameterSet ¶meters)
Callback for the Processor to configure itself from the given set of parameters.
Definition
TrackEfficiencyProcessor.cxx:19
TrackEfficiencyProcessor::reg_it
std::map< std::string, std::shared_ptr< TrackEfficHistos > >::iterator reg_it
Definition
TrackEfficiencyProcessor.h:83
TrackEfficiencyProcessor::finalize
virtual void finalize()
Callback for the Processor to take any necessary action when the processing of events finishes,...
Definition
TrackEfficiencyProcessor.cxx:379
TrackEfficiencyProcessor::regionSelections_
std::vector< std::string > regionSelections_
Definition
TrackEfficiencyProcessor.h:48
TrackEfficiencyProcessor::cluSelCfg_
std::string cluSelCfg_
Definition
TrackEfficiencyProcessor.h:53
TrackEfficiencyProcessor::initialize
virtual void initialize(TTree *tree)
Callback for the Processor to take any necessary action when the processing of events starts,...
Definition
TrackEfficiencyProcessor.cxx:49
TrackEfficiencyProcessor::tree_
TTree * tree_
Definition
TrackEfficiencyProcessor.h:70
TrackEfficiencyProcessor::cluHistoCfg_
std::string cluHistoCfg_
Definition
TrackEfficiencyProcessor.h:88
TrackEfficiencyProcessor::beamE_
double beamE_
Definition
TrackEfficiencyProcessor.h:91
TrackEfficiencyProcessor::trks_
std::vector< Track * > * trks_
Definition
TrackEfficiencyProcessor.h:63
TrackEfficiencyProcessor::clus_
std::vector< CalCluster * > * clus_
Definition
TrackEfficiencyProcessor.h:61
TrackEfficiencyProcessor::_reg_trkeff_histos
std::map< std::string, std::shared_ptr< TrackEfficHistos > > _reg_trkeff_histos
Definition
TrackEfficiencyProcessor.h:75
TrackEfficiencyProcessor::thrProngCfg_
std::string thrProngCfg_
Definition
TrackEfficiencyProcessor.h:87
TrackEfficiencyProcessor::fspartColl_
std::string fspartColl_
Definition
TrackEfficiencyProcessor.h:68
TrackEfficiencyProcessor::threeProngSelections_
std::vector< std::string > threeProngSelections_
Definition
TrackEfficiencyProcessor.h:49
TrackEfficiencyProcessor::trkSelCfg_
std::string trkSelCfg_
Definition
TrackEfficiencyProcessor.h:52
TrackEfficiencyProcessor::evth_
EventHeader * evth_
Definition
TrackEfficiencyProcessor.h:64
TrackEfficiencyProcessor::_reg_three_prong_trkeff_selectors
std::map< std::string, std::shared_ptr< BaseSelector > > _reg_three_prong_trkeff_selectors
Definition
TrackEfficiencyProcessor.h:78
TrackEfficiencyProcessor::_three_prong_regions
std::vector< std::string > _three_prong_regions
Definition
TrackEfficiencyProcessor.h:80
TrackEfficiencyProcessor::three_prong_reg_it
std::map< std::string, std::shared_ptr< ThreeProngHistos > >::iterator three_prong_reg_it
Definition
TrackEfficiencyProcessor.h:84
TrackEfficiencyProcessor::_reg_three_prong_trkeff_histos
std::map< std::string, std::shared_ptr< ThreeProngHistos > > _reg_three_prong_trkeff_histos
Definition
TrackEfficiencyProcessor.h:79
TrackEfficiencyProcessor::_ah
std::shared_ptr< AnaHelpers > _ah
Definition
TrackEfficiencyProcessor.h:93
TrackEfficiencyProcessor::bevth_
TBranch * bevth_
Definition
TrackEfficiencyProcessor.h:59
TrackEfficiencyProcessor::trkColl_
std::string trkColl_
Definition
TrackEfficiencyProcessor.h:69
TrackEfficiencyProcessor::bclus_
TBranch * bclus_
Definition
TrackEfficiencyProcessor.h:57
TrackEfficiencyProcessor::btrks_
TBranch * btrks_
Definition
TrackEfficiencyProcessor.h:58
TrackEfficiencyProcessor::cluColl_
std::string cluColl_
Definition
TrackEfficiencyProcessor.h:67
TrackEfficiencyProcessor::_reg_trkeff_selectors
std::map< std::string, std::shared_ptr< BaseSelector > > _reg_trkeff_selectors
Definition
TrackEfficiencyProcessor.h:74
TrackEfficiencyProcessor::cluSelector
std::shared_ptr< BaseSelector > cluSelector
Definition
TrackEfficiencyProcessor.h:46
TrackEfficiencyProcessor::trkSelector
std::shared_ptr< BaseSelector > trkSelector
Definition
TrackEfficiencyProcessor.h:47
TrackEfficiencyProcessor::fspart_
std::vector< Particle * > * fspart_
Definition
TrackEfficiencyProcessor.h:62
TrackEfficiencyProcessor::bfspart_
TBranch * bfspart_
Definition
TrackEfficiencyProcessor.h:56
TrackEfficiencyProcessor::_regions
std::vector< std::string > _regions
Definition
TrackEfficiencyProcessor.h:76
TrackEfficiencyProcessor::isData
int isData
Definition
TrackEfficiencyProcessor.h:92
TrackEfficiencyProcessor::ThreeProngCand
Definition
TrackEfficiencyProcessor.h:105
TrackEfficiencyProcessor::ThreeProngCand::ele
Particle * ele
Definition
TrackEfficiencyProcessor.h:106
TrackEfficiencyProcessor::ThreeProngCand::recoil
Particle * recoil
Definition
TrackEfficiencyProcessor.h:108
TrackEfficiencyProcessor::ThreeProngCand::pos
Particle * pos
Definition
TrackEfficiencyProcessor.h:107
TrackEfficiencyProcessor::TridentCand
Definition
TrackEfficiencyProcessor.h:100
TrackEfficiencyProcessor::TridentCand::ele
Particle * ele
Definition
TrackEfficiencyProcessor.h:101
TrackEfficiencyProcessor::TridentCand::pos
Particle * pos
Definition
TrackEfficiencyProcessor.h:102
Generated by
1.9.8