16 #include "GaudiKernel/ITHistSvc.h"
26 unsigned int ev_infomask{EventInfoBranch::writePileUp};
82 ATH_CHECK(service(
"Muon::TGCCablingServerSvc", TgcCabGet,
true));
92 return StatusCode::SUCCESS;
99 return StatusCode::SUCCESS;
104 const EventContext& ctx = Gaudi::Hive::currentContext();
106 if (!
m_tree.
fill(ctx))
return StatusCode::FAILURE;
108 return StatusCode::SUCCESS;
124 EDM_object Hits_sTGC, Digits_sTGC, SDO_sTGC, RDO_sTGC, PRD_sTGC;
125 EDM_object Hits_MM, Digits_MM, SDO_MM, RDO_MM, PRD_MM;
127 Hits_sTGC.
setName(
"Hits",
"sTGC");
128 Digits_sTGC.
setName(
"Digits",
"sTGC");
129 SDO_sTGC.
setName(
"SDO",
"sTGC");
130 RDO_sTGC.
setName(
"RDO",
"sTGC");
131 PRD_sTGC.
setName(
"PRD",
"sTGC");
134 Digits_MM.
setName(
"Digits",
"MM");
141 TObjArray* brlst =
m_tree->GetListOfBranches();
143 branch_name =
branch->GetName();
162 efficiencies <<
"NSW Matching algorithm, efficiencies of conversion from and to various EDM objects" << std::endl;
203 return StatusCode::SUCCESS;
210 <<
" data. This is not implemented in this algorithm");
218 std::vector<int>* TruthParticle_Pdg;
220 TruthParticle_Pdg =
nullptr;
221 m_tree->SetBranchAddress(
"TruthParticle_Pdg", &TruthParticle_Pdg);
225 for (Long64_t i_entry = 0; i_entry <
nEntries; ++i_entry) {
228 m_tree->GetEntry(i_entry);
246 for (
int pdg : *TruthParticle_Pdg) { allMu &= (abs(pdg) == mu_pdg); }
248 ATH_MSG_VERBOSE(
"Skipping event, because doNSWMatchingMuonOnly is true and there non muon particles");
255 data1.init_matching();
260 for (
uint j = 0; j <
data1.size(); ++j) {
270 static std::once_flag
flag;
271 std::call_once(
flag, [&]() {
272 ATH_MSG_WARNING(
"No match found! Will now disable this kind of WARNING but please be "
273 "aware that you are running with suppressNoMatchWarning set to true!");
297 efficiencies.open(
"NSWMatchingAlg_efficiencies.txt", std::ofstream::app);
302 return StatusCode::SUCCESS;
309 bool setBranch =
false;
310 if (!(branch_name.Contains(oData.
getName()) && branch_name.Contains(oData.
getDetector()))) {
return StatusCode::SUCCESS; }
312 if (branch_name.Contains(
"_sim_")) {
return StatusCode::SUCCESS; }
313 if (branch_name.EndsWith(
"stationName")) {
317 if (branch_name.EndsWith(
"stationEta")) {
321 if (branch_name.EndsWith(
"stationPhi")) {
325 if (branch_name.EndsWith(
"multiplet")) {
329 if (branch_name.EndsWith(
"gas_gap")) {
333 if (branch_name.EndsWith(
"channel") && !branch_name.Contains(
"rdos")) {
337 if (branch_name.EndsWith(
"channel_type")) {
341 if (setBranch) {
ATH_MSG_DEBUG(
"Set data adress of branch " << branch_name); }
343 return StatusCode::SUCCESS;