ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkExtrapolation
TrkExAlgs
src
PropResultRootWriterSvc.cxx
Go to the documentation of this file.
1
2
/*
3
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
4
*/
5
6
#include "
TrkExAlgs/PropResultRootWriterSvc.h
"
7
8
#include <vector>
9
#include <deque>
10
#include <mutex>
11
#include <thread>
12
13
#include "TFile.h"
14
15
Trk::PropResultRootWriterSvc::PropResultRootWriterSvc
(
const
std::string& name, ISvcLocator* svc )
16
:
AthService
(name, svc),
17
m_thistSvc
(
"THistSvc"
, name),
18
m_tree
(nullptr) {
19
}
20
21
Trk::PropResultRootWriterSvc::~PropResultRootWriterSvc
() =
default
;
22
23
StatusCode
Trk::PropResultRootWriterSvc::initialize
()
24
{
25
ATH_CHECK
( AthService::initialize() );
26
27
CHECK
(
m_thistSvc
.retrieve());
28
29
const
std::string treeName =
m_treeName
;
30
m_tree
=
new
TTree(treeName.data(),
"MyStudies"
);
31
32
std::string fullNtupleName =
static_cast<
std::string
>
(
m_ntupleDirName
) +
m_treeName
;
33
CHECK
(
m_thistSvc
->regTree(fullNtupleName,
m_tree
));
34
35
if
(
m_tree
==
nullptr
) {
36
ATH_MSG_ERROR
(
"Unable to create TTree"
);
37
return
StatusCode::FAILURE;
38
}
39
40
m_tree
->Branch(
"event_nr"
, &
m_eventNum
);
41
42
m_tree
->Branch(
"start_d0"
, &
m_start_d0
);
43
m_tree
->Branch(
"start_z0"
, &
m_start_z0
);
44
m_tree
->Branch(
"start_phi"
, &
m_start_phi
);
45
m_tree
->Branch(
"start_theta"
, &
m_start_theta
);
46
m_tree
->Branch(
"start_qop"
, &
m_start_qop
);
47
48
m_tree
->Branch(
"fwd_success"
, &
m_fwd_success
);
49
m_tree
->Branch(
"fwd_time"
, &
m_fwd_time
);
50
m_tree
->Branch(
"fwd_final_l0"
, &
m_fwd_final_l0
);
51
m_tree
->Branch(
"fwd_final_l1"
, &
m_fwd_final_l1
);
52
m_tree
->Branch(
"fwd_final_x"
, &
m_fwd_final_x
);
53
m_tree
->Branch(
"fwd_final_y"
, &
m_fwd_final_y
);
54
m_tree
->Branch(
"fwd_final_z"
, &
m_fwd_final_z
);
55
m_tree
->Branch(
"fwd_final_phi"
, &
m_fwd_final_phi
);
56
m_tree
->Branch(
"fwd_final_theta"
, &
m_fwd_final_theta
);
57
m_tree
->Branch(
"fwd_final_qop"
, &
m_fwd_final_qop
);
58
m_tree
->Branch(
"fwd_final_sigma_l0"
, &
m_fwd_final_sigma_l0
);
59
m_tree
->Branch(
"fwd_final_sigma_l1"
, &
m_fwd_final_sigma_l1
);
60
m_tree
->Branch(
"fwd_final_sigma_phi"
, &
m_fwd_final_sigma_phi
);
61
m_tree
->Branch(
"fwd_final_sigma_theta"
, &
m_fwd_final_sigma_theta
);
62
m_tree
->Branch(
"fwd_final_sigma_qop"
, &
m_fwd_final_sigma_qop
);
63
64
m_tree
->Branch(
"bkw_success"
, &
m_bkw_success
);
65
m_tree
->Branch(
"bkw_time"
, &
m_bkw_time
);
66
m_tree
->Branch(
"bkw_final_d0"
, &
m_bkw_final_d0
);
67
m_tree
->Branch(
"bkw_final_z0"
, &
m_bkw_final_z0
);
68
m_tree
->Branch(
"bkw_final_phi"
, &
m_bkw_final_phi
);
69
m_tree
->Branch(
"bkw_final_theta"
, &
m_bkw_final_theta
);
70
m_tree
->Branch(
"bkw_final_qop"
, &
m_bkw_final_qop
);
71
m_tree
->Branch(
"bkw_final_sigma_d0"
, &
m_bkw_final_sigma_d0
);
72
m_tree
->Branch(
"bkw_final_sigma_z0"
, &
m_bkw_final_sigma_z0
);
73
m_tree
->Branch(
"bkw_final_sigma_phi"
, &
m_bkw_final_sigma_phi
);
74
m_tree
->Branch(
"bkw_final_sigma_theta"
, &
m_bkw_final_sigma_theta
);
75
m_tree
->Branch(
"bkw_final_sigma_qop"
, &
m_bkw_final_sigma_qop
);
76
77
return
StatusCode::SUCCESS;
78
}
ATH_CHECK
#define ATH_CHECK
Evaluate an expression and check for errors.
Definition
AthCheckMacros.h:40
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition
AthMsgStreamMacros.h:33
CHECK
#define CHECK(...)
Evaluate an expression and check for errors.
Definition
Control/AthenaKernel/AthenaKernel/errorcheck.h:422
PropResultRootWriterSvc.h
AthService::AthService
AthService()
Trk::PropResultRootWriterSvc::m_bkw_final_d0
float m_bkw_final_d0
Definition
PropResultRootWriterSvc.h:70
Trk::PropResultRootWriterSvc::m_bkw_final_sigma_z0
float m_bkw_final_sigma_z0
Definition
PropResultRootWriterSvc.h:76
Trk::PropResultRootWriterSvc::m_tree
TTree * m_tree
Definition
PropResultRootWriterSvc.h:40
Trk::PropResultRootWriterSvc::m_ntupleDirName
Gaudi::Property< std::string > m_ntupleDirName
Definition
PropResultRootWriterSvc.h:41
Trk::PropResultRootWriterSvc::m_bkw_final_sigma_qop
float m_bkw_final_sigma_qop
Definition
PropResultRootWriterSvc.h:79
Trk::PropResultRootWriterSvc::m_bkw_final_theta
float m_bkw_final_theta
Definition
PropResultRootWriterSvc.h:73
Trk::PropResultRootWriterSvc::m_eventNum
int m_eventNum
Definition
PropResultRootWriterSvc.h:44
Trk::PropResultRootWriterSvc::m_fwd_final_sigma_l1
float m_fwd_final_sigma_l1
Definition
PropResultRootWriterSvc.h:63
Trk::PropResultRootWriterSvc::m_fwd_final_theta
float m_fwd_final_theta
Definition
PropResultRootWriterSvc.h:60
Trk::PropResultRootWriterSvc::m_fwd_final_sigma_l0
float m_fwd_final_sigma_l0
Definition
PropResultRootWriterSvc.h:62
Trk::PropResultRootWriterSvc::m_fwd_final_l1
float m_fwd_final_l1
Definition
PropResultRootWriterSvc.h:55
Trk::PropResultRootWriterSvc::m_fwd_final_phi
float m_fwd_final_phi
Definition
PropResultRootWriterSvc.h:59
Trk::PropResultRootWriterSvc::m_bkw_time
float m_bkw_time
Definition
PropResultRootWriterSvc.h:69
Trk::PropResultRootWriterSvc::m_fwd_time
float m_fwd_time
Definition
PropResultRootWriterSvc.h:53
Trk::PropResultRootWriterSvc::m_bkw_final_qop
float m_bkw_final_qop
Definition
PropResultRootWriterSvc.h:74
Trk::PropResultRootWriterSvc::m_start_d0
float m_start_d0
Definition
PropResultRootWriterSvc.h:46
Trk::PropResultRootWriterSvc::m_start_z0
float m_start_z0
Definition
PropResultRootWriterSvc.h:47
Trk::PropResultRootWriterSvc::~PropResultRootWriterSvc
virtual ~PropResultRootWriterSvc()
destructor
Trk::PropResultRootWriterSvc::m_treeName
Gaudi::Property< std::string > m_treeName
Definition
PropResultRootWriterSvc.h:42
Trk::PropResultRootWriterSvc::m_fwd_final_z
float m_fwd_final_z
Definition
PropResultRootWriterSvc.h:58
Trk::PropResultRootWriterSvc::m_thistSvc
ServiceHandle< ITHistSvc > m_thistSvc
Definition
PropResultRootWriterSvc.h:39
Trk::PropResultRootWriterSvc::m_bkw_final_sigma_phi
float m_bkw_final_sigma_phi
Definition
PropResultRootWriterSvc.h:77
Trk::PropResultRootWriterSvc::m_fwd_final_l0
float m_fwd_final_l0
Definition
PropResultRootWriterSvc.h:54
Trk::PropResultRootWriterSvc::m_fwd_final_x
float m_fwd_final_x
Definition
PropResultRootWriterSvc.h:56
Trk::PropResultRootWriterSvc::m_start_theta
float m_start_theta
Definition
PropResultRootWriterSvc.h:49
Trk::PropResultRootWriterSvc::m_bkw_final_sigma_d0
float m_bkw_final_sigma_d0
Definition
PropResultRootWriterSvc.h:75
Trk::PropResultRootWriterSvc::initialize
virtual StatusCode initialize() override
Definition
PropResultRootWriterSvc.cxx:23
Trk::PropResultRootWriterSvc::m_fwd_final_sigma_phi
float m_fwd_final_sigma_phi
Definition
PropResultRootWriterSvc.h:64
Trk::PropResultRootWriterSvc::PropResultRootWriterSvc
PropResultRootWriterSvc(const std::string &name, ISvcLocator *svcloc)
constructor
Definition
PropResultRootWriterSvc.cxx:15
Trk::PropResultRootWriterSvc::m_fwd_success
float m_fwd_success
Definition
PropResultRootWriterSvc.h:52
Trk::PropResultRootWriterSvc::m_fwd_final_qop
float m_fwd_final_qop
Definition
PropResultRootWriterSvc.h:61
Trk::PropResultRootWriterSvc::m_start_phi
float m_start_phi
Definition
PropResultRootWriterSvc.h:48
Trk::PropResultRootWriterSvc::m_bkw_success
float m_bkw_success
Definition
PropResultRootWriterSvc.h:68
Trk::PropResultRootWriterSvc::m_start_qop
float m_start_qop
Definition
PropResultRootWriterSvc.h:50
Trk::PropResultRootWriterSvc::m_bkw_final_sigma_theta
float m_bkw_final_sigma_theta
Definition
PropResultRootWriterSvc.h:78
Trk::PropResultRootWriterSvc::m_bkw_final_z0
float m_bkw_final_z0
Definition
PropResultRootWriterSvc.h:71
Trk::PropResultRootWriterSvc::m_fwd_final_y
float m_fwd_final_y
Definition
PropResultRootWriterSvc.h:57
Trk::PropResultRootWriterSvc::m_bkw_final_phi
float m_bkw_final_phi
Definition
PropResultRootWriterSvc.h:72
Trk::PropResultRootWriterSvc::m_fwd_final_sigma_qop
float m_fwd_final_sigma_qop
Definition
PropResultRootWriterSvc.h:66
Trk::PropResultRootWriterSvc::m_fwd_final_sigma_theta
float m_fwd_final_sigma_theta
Definition
PropResultRootWriterSvc.h:65
Generated on
for ATLAS Offline Software by
1.17.0