ATLAS Offline Software
Loading...
Searching...
No Matches
TauCommonDetails.icc
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5///@file TauCommonDetails.icc
6///
7/// Inline function implementations for tau event details class
8///
9///Package: Reconstruction/TauEvent
10///
11///@author Noel Dawe, Thomas Burgess
12///
13/// Created by Thomas Burgess on 2008-10-28.
14///
15/// $Id: TauCommonDetails.icc,v 1.3 2009-02-08 21:25:25 slai Exp $
16
17namespace Analysis {
18 template <class stream>
19 void TauCommonDetails::printOn(stream& o) const
20 {
21 o << "TauCommonDetails: {"
22 << "ipZ0SinThetaSigLeadTrk: "<<m_ipZ0SinThetaSigLeadTrk<<";\n"
23 << "etOverPtLeadTrk: "<<m_etOverPtLeadTrk<<";\n"
24 << "etOverPtLeadLooseTrk: "<<m_etOverPtLeadLooseTrk<<";\n"
25 << "leadTrkPt: "<<m_leadTrkPt<<";\n"
26 << "leadLooseTrkPt: "<<m_leadLooseTrkPt<<";\n"
27 << "ipSigLeadTrk: "<<m_ipSigLeadTrk<<";\n"
28 << "ipSigLeadLooseTrk: "<<m_ipSigLeadLooseTrk<<";\n"
29 << "looseTrk: {";
30 for(ElementLinkVector<Rec::TrackParticleContainer>::const_iterator itrk
31 = m_looseTrk.begin(); itrk!=m_looseTrk.end(); ++itrk)
32 o << *(*itrk) << " ";
33 o << "};\n"
34 << "looseConvTrk: {";
35 for(ElementLinkVector<Rec::TrackParticleContainer>::const_iterator itrk
36 = m_looseConvTrk.begin(); itrk!=m_looseConvTrk.end(); ++itrk)
37 o << *(*itrk) << " ";
38 o << "};\n"
39 << "chrgLooseTrk: "<<m_chrgLooseTrk<<";\n"
40 // m_cellEM012Cluster not printed
41 <<"sumPi0Vec: "<<m_sumPi0Vec<<";\n"
42 << "massTrkSys: "<<m_massTrkSys<<";\n"
43 << "trkWidth2: "<<m_trkWidth2<<";\n"
44 << "trFlightPathSig: "<<m_trFlightPathSig<<";\n"
45 << "secVtx: ";
46 if (m_secVtx==0) o<< "0"; else m_secVtx->dump(o);
47 o << ";\n"
48 << "etEflow: "<<m_etEflow<<";\n"
49 << "mEflow: "<<m_mEflow<<";\n"
50
51
52 <<"m_Ele_E237E277: "<< m_Ele_E237E277<<";\n"
53 <<"m_Ele_PresamplerFraction: "<< m_Ele_PresamplerFraction<<";\n"
54 <<"m_Ele_ECALFirstFraction: "<< m_Ele_ECALFirstFraction<<";\n"
55
56 //topocluster ID variables
57 <<"m_numCells: "<< m_numCells<<";\n"
58 <<"m_numTopoClusters: "<< m_numTopoClusters<<";\n"
59 <<"m_numEffTopoClusters: "<< m_numEffTopoClusters<<";\n"
60 <<"m_topoInvMass: "<< m_topoInvMass<<";\n"
61 <<"m_effTopoInvMass: "<< m_effTopoInvMass<<";\n"
62 <<"m_topoMeanDeltaR: "<< m_topoMeanDeltaR<<";\n"
63 <<"m_effTopoMeanDeltaR: "<< m_effTopoMeanDeltaR<<";\n"
64
65 //
66 //Applicable for calo seeded tau reconstruction
67 //
68
69 // m_pi0 not printed
70 <<"seedCalo_nIsolLooseTrk: "<<m_seedCalo_nIsolLooseTrk<<";\n"
71 <<"seedCalo_EMRadius: "<<m_seedCalo_EMRadius<<";\n"
72 <<"seedCalo_hadRadius: "<<m_seedCalo_hadRadius<<";\n"
73 <<"seedCalo_etEMAtEMScale: "<<m_seedCalo_etEMAtEMScale<<";\n"
74 <<"seedCalo_etHadAtEMScale: "<<m_seedCalo_etHadAtEMScale<<";\n"
75 <<"seedCalo_isolFrac: "<<m_seedCalo_isolFrac<<";\n"
76 <<"seedCalo_centFrac: "<<m_seedCalo_centFrac<<";\n"
77 <<"seedCalo_stripWidth2: "<<m_seedCalo_stripWidth2<<";\n"
78 <<"seedCalo_nStrip: "<<m_seedCalo_nStrip<<";\n"
79 <<"seedCalo_etEMCalib: "<<m_seedCalo_etEMCalib<<";\n"
80 <<"seedCalo_etHadCalib: "<<m_seedCalo_etHadCalib<<";\n"
81 <<"seedCalo_eta: "<<m_seedCalo_eta<<";\n"
82 <<"seedCalo_phi: "<<m_seedCalo_phi<<";\n"
83 <<"seedCalo_trkAvgDist: "<<m_seedCalo_trkAvgDist<<";\n"
84 <<"seedCalo_trkRmsDist: "<<m_seedCalo_trkRmsDist<<";\n"
85 <<"seedCalo_lead2ClusterEOverAllClusterE: "<<m_seedCalo_lead2ClusterEOverAllClusterE<<";\n"
86 <<"seedCalo_lead3ClusterEOverAllClusterE: "<<m_seedCalo_lead3ClusterEOverAllClusterE<<";\n"
87 <<"seedCalo_caloIso: "<<m_seedCalo_caloIso<<";\n"
88 <<"seedCalo_caloIsoCorrected: "<<m_seedCalo_caloIsoCorrected<<";\n"
89 <<"seedCalo_dRmax: "<<m_seedCalo_dRmax<<";\n"
90
91 //
92 //Applicable for track seeded tau reconstruction
93 //
94
95 <<"seedTrk_EMRadius: "<<m_seedTrk_EMRadius<<";\n"
96 <<"seedTrk_isolFrac: "<<m_seedTrk_isolFrac<<";\n"
97 <<"seedTrk_etChrgHadOverSumTrkPt: "
98 <<m_seedTrk_etChrgHadOverSumTrkPt<<";\n"
99 <<"seedTrk_isolFracWide: "<<m_seedTrk_isolFracWide<<";\n"
100 <<"seedTrk_etHadAtEMScale: "<<m_seedTrk_etHadAtEMScale<<";\n"
101 <<"seedTrk_etEMAtEMScale: "<<m_seedTrk_etEMAtEMScale<<";\n"
102 <<"seedTrk_etEMCL: "<<m_seedTrk_etEMCL<<";\n"
103 <<"seedTrk_etChrgEM: "<<m_seedTrk_etChrgEM<<";\n"
104 <<"seedTrk_etNeuEM: "<<m_seedTrk_etNeuEM<<";\n"
105 <<"seedTrk_etResNeuEM: "<<m_seedTrk_etResNeuEM<<";\n"
106 <<"seedTrk_hadLeakEt: "<<m_seedTrk_hadLeakEt<<";\n"
107 << "seedTrk_etChrgEM01Trk: {";
108 std::copy(m_seedTrk_etChrgEM01Trk.begin(),
109 m_seedTrk_etChrgEM01Trk.end(),
110 std::ostream_iterator<double>(o," "));
111 o << "};\n"
112 << "seedTrk_etResChrgEMTrk){";
113 std::copy(m_seedTrk_etResChrgEMTrk.begin(),
114 m_seedTrk_etResChrgEMTrk.end(),
115 std::ostream_iterator<double>(o," "));
116 o << "};\n"
117 <<"seedTrk_sumEMCellEtOverLeadTrkPt: "
118 <<m_seedTrk_sumEMCellEtOverLeadTrkPt<<";\n"
119 <<"seedTrk_secMaxStripEt: "<<m_seedTrk_secMaxStripEt<<";\n"
120 <<"seedTrk_stripWidth2: "<<m_seedTrk_stripWidth2<<";\n"
121 <<"seedTrk_nStrip: "<<m_seedTrk_nStrip<<";\n"
122 <<"seedTrk_etChrgHad: "<<m_seedTrk_etChrgHad<<";\n"
123 <<"seedTrk_nOtherCoreTrk: "<<m_seedTrk_nOtherCoreTrk<<";\n"
124 <<"seedTrk_nIsolTrk: "<<m_seedTrk_nIsolTrk<<";\n"
125 <<"seedTrk_etIsolEM: "<<m_seedTrk_etIsolEM<<";\n"
126 <<"seedTrk_etIsolHad: "<<m_seedTrk_etIsolHad<<";\n"
127 <<"EM_TES_scale: "<<m_EM_TES_scale<<";\n"
128 <<"LC_TES_precalib: "<<m_LC_TES_precalib<<";\n"
129 <<"cellBasedEnergyRing1: "<<m_cellBasedEnergyRing1<<";\n"
130 <<"cellBasedEnergyRing2: "<<m_cellBasedEnergyRing2<<";\n"
131 <<"cellBasedEnergyRing3: "<<m_cellBasedEnergyRing3<<";\n"
132 <<"cellBasedEnergyRing4: "<<m_cellBasedEnergyRing4<<";\n"
133 <<"cellBasedEnergyRing5: "<<m_cellBasedEnergyRing5<<";\n"
134 <<"cellBasedEnergyRing6: "<<m_cellBasedEnergyRing6<<";\n"
135 <<"cellBasedEnergyRing7: "<<m_cellBasedEnergyRing7<<";\n"
136 <<"TRT_NHT_OVER_NLT: " <<m_TRT_NHT_OVER_NLT<<";\n"
137
138 //Tau Jet Vertex Fraction
139 <<"TauJetVtxFraction: " <<m_TauJetVtxFraction<<";\n"
140
141 //Track filter and generic pi0 cone
142 <<"TrackFilterProngs: "<<m_TrackFilterProngs<<";\n"
143 <<"TrackFilterQuality: "<<m_TrackFilterQuality<<";\n"
144 <<"Pi0ConeDR: "<<m_Pi0ConeDR<<";\n"
145
146 //End
147 << "};";
148 }
149
150 inline bool TauCommonDetails::operator!=(
151 const TauCommonDetails& rhs ) const
152 {
153 return !((*this)==rhs);
154 }
155
156 /////////////////////////////////////////////////////////////////////
157 //
158 // Common for track and calo seeded tau reconstruction
159 //
160 /////////////////////////////////////////////////////////////////////
161
162 //-------------------------------------------------------------------------
163 // ipZ0SinThetaSigLeadTrk - Significance of z0SinTheta
164 //-------------------------------------------------------------------------
165
166 inline double TauCommonDetails::ipZ0SinThetaSigLeadTrk() const
167 {
168 return m_ipZ0SinThetaSigLeadTrk;
169 }
170
171 inline void TauCommonDetails::setIpZ0SinThetaSigLeadTrk(
172 double significance )
173 {
174 m_ipZ0SinThetaSigLeadTrk = significance;
175 }
176
177 //-------------------------------------------------------------------------
178 // etOverPtLeadTrk - leading E_T to p_T ratio
179 //-------------------------------------------------------------------------
180
181 inline double TauCommonDetails::etOverPtLeadTrk() const
182 {
183 return m_etOverPtLeadTrk;
184 }
185
186 inline void TauCommonDetails::setEtOverPtLeadTrk(double ratio)
187 {
188 m_etOverPtLeadTrk=ratio;
189 }
190
191 // --------------------------------------------------------------
192 // etOverPtLeadLooseTrk - Tau candidate E_T over leading loose track p_T
193 // --------------------------------------------------------------
194
195 inline double TauCommonDetails::etOverPtLeadLooseTrk() const
196 {
197 return m_etOverPtLeadLooseTrk;
198 }
199
200 inline void TauCommonDetails::setEtOverPtLeadLooseTrk(
201 double ratio )
202 {
203 m_etOverPtLeadLooseTrk = ratio;
204 }
205
206 //-------------------------------------------------------------------------
207 // leadTrkPt - leading track p_T
208 //-------------------------------------------------------------------------
209
210 inline double TauCommonDetails::leadTrkPt() const
211 {
212 return m_leadTrkPt;
213 }
214
215 inline void TauCommonDetails::setLeadTrkPt(double pt)
216 {
217 m_leadTrkPt=pt;
218 }
219
220 //-----------------------------------------------------------------------
221 // leadLooseTrkPt - p_T of leading loose track
222 //-----------------------------------------------------------------------
223
224 inline double TauCommonDetails::leadLooseTrkPt() const
225 {
226 return m_leadLooseTrkPt;
227 }
228
229 inline void TauCommonDetails::setLeadLooseTrkPt(
230 double pT )
231 {
232 m_leadLooseTrkPt=pT;
233 }
234
235 // --------------------------------------------------------------
236 // ipSigLeadTrk - impact parameter significance
237 // --------------------------------------------------------------
238
239 inline double TauCommonDetails::ipSigLeadTrk() const
240 {
241 return m_ipSigLeadTrk;
242 }
243
244 inline void TauCommonDetails::setIpSigLeadTrk(
245 double significance )
246 {
247 m_ipSigLeadTrk = significance;
248 }
249
250 // --------------------------------------------------------------
251 // ipSigLeadLooseTrk - impact parameter significance
252 // --------------------------------------------------------------
253
254 inline double TauCommonDetails::ipSigLeadLooseTrk() const
255 {
256 return m_ipSigLeadLooseTrk;
257 }
258
259 inline void TauCommonDetails::setIpSigLeadLooseTrk(
260 double significance )
261 {
262 m_ipSigLeadLooseTrk = significance;
263 }
264
265 //-----------------------------------------------------------------------
266 // LooseTrk - collection of loose tracks
267 //-----------------------------------------------------------------------
268
269 inline const Rec::TrackParticle *TauCommonDetails::looseTrk(
270 unsigned int i ) const
271 {
272 if( m_looseTrk.size() <= i )
273 return 0;
274 else if( m_looseTrk[i].isValid() )
275 return *(m_looseTrk[i]);
276 else
277 return 0;
278 }
279
280 inline const ElementLinkVector<Rec::TrackParticleContainer>&
281 TauCommonDetails::looseTrk() const
282 {
283 return m_looseTrk;
284 }
285
286 inline ElementLinkVector<Rec::TrackParticleContainer>&
287 TauCommonDetails::looseTrk()
288 {
289 return m_looseTrk;
290 }
291
292 inline void TauCommonDetails::addLooseTrk(
293 const Rec::TrackParticleContainer *cont,
294 const Rec::TrackParticle *track )
295 {
296 ElementLink<Rec::TrackParticleContainer> link;
297 link.toContainedElement( *cont, track ) ;
298 m_looseTrk.push_back( link ) ;
299 }
300
301 inline unsigned int TauCommonDetails::nLooseTrk() const
302 {
303 return m_looseTrk.size();
304 }
305
306 //-----------------------------------------------------------------------
307 // LooseConvTrk - collection of loose conversion tracks
308 //-----------------------------------------------------------------------
309
310 inline const Rec::TrackParticle *TauCommonDetails::looseConvTrk(
311 unsigned int i ) const
312 {
313 if( m_looseConvTrk.size() <= i )
314 return 0;
315 else if( m_looseConvTrk[i].isValid() )
316 return *(m_looseConvTrk[i]);
317 else
318 return 0;
319 }
320
321 inline const ElementLinkVector<Rec::TrackParticleContainer>&
322 TauCommonDetails::looseConvTrk() const
323 {
324 return m_looseConvTrk;
325 }
326
327 inline ElementLinkVector<Rec::TrackParticleContainer>&
328 TauCommonDetails::looseConvTrk()
329 {
330 return m_looseConvTrk;
331 }
332
333 inline void TauCommonDetails::addLooseConvTrk(
334 const Rec::TrackParticleContainer *cont,
335 const Rec::TrackParticle *track )
336 {
337 ElementLink<Rec::TrackParticleContainer> link;
338 link.toContainedElement( *cont, track ) ;
339 m_looseConvTrk.push_back( link ) ;
340 }
341
342 inline unsigned int TauCommonDetails::nLooseConvTrk() const
343 {
344 return m_looseConvTrk.size();
345 }
346
347
348 inline int TauCommonDetails::nProngLoose() const
349 {
350 return m_looseTrk.size()-m_looseConvTrk.size();
351 }
352
353 inline bool TauCommonDetails::isLooseConvTrk(
354 unsigned int i) const
355 {
356 if (m_looseTrk.size()<=i) return false;
357 return find (
358 m_looseConvTrk.begin(),
359 m_looseConvTrk.end(),
360 m_looseTrk[i] ) != m_looseConvTrk.end();
361 }
362
363
364 //-----------------------------------------------------------------------
365 // Seed Calo Wide Trk - collection of SeedCalo wide tracks
366 //-----------------------------------------------------------------------
367
368 inline const Rec::TrackParticle *TauCommonDetails::seedCalo_wideTrk(
369 unsigned int i ) const
370 {
371 if( m_seedCalo_wideTrk.size() <= i )
372 return 0;
373 else if( m_seedCalo_wideTrk[i].isValid() )
374 return *(m_seedCalo_wideTrk[i]);
375 else
376 return 0;
377 }
378
379 inline const ElementLinkVector<Rec::TrackParticleContainer>&
380 TauCommonDetails::seedCalo_wideTrk() const
381 {
382 return m_seedCalo_wideTrk;
383 }
384
385 inline ElementLinkVector<Rec::TrackParticleContainer>&
386 TauCommonDetails::seedCalo_wideTrk()
387 {
388 return m_seedCalo_wideTrk;
389 }
390
391 inline void TauCommonDetails::addSeedCalo_wideTrk(
392 const Rec::TrackParticleContainer *cont,
393 const Rec::TrackParticle *track )
394 {
395 ElementLink<Rec::TrackParticleContainer> link;
396 link.toContainedElement( *cont, track ) ;
397 m_seedCalo_wideTrk.push_back( link ) ;
398 }
399
400 inline unsigned int TauCommonDetails::seedCalo_nWideTrk() const
401 {
402 return m_seedCalo_wideTrk.size();
403 }
404
405 //-----------------------------------------------------------------------
406 // Seed Trk Wide Trk - collection of seedTrk wide tracks
407 //-----------------------------------------------------------------------
408
409 inline const Rec::TrackParticle *TauCommonDetails::seedTrk_wideTrk(
410 unsigned int i ) const
411 {
412 if( m_seedTrk_wideTrk.size() <= i )
413 return 0;
414 else if( m_seedTrk_wideTrk[i].isValid() )
415 return *(m_seedTrk_wideTrk[i]);
416 else
417 return 0;
418 }
419
420 inline const ElementLinkVector<Rec::TrackParticleContainer>&
421 TauCommonDetails::seedTrk_wideTrk() const
422 {
423 return m_seedTrk_wideTrk;
424 }
425
426 inline ElementLinkVector<Rec::TrackParticleContainer>&
427 TauCommonDetails::seedTrk_wideTrk()
428 {
429 return m_seedTrk_wideTrk;
430 }
431
432 inline void TauCommonDetails::addSeedTrk_wideTrk(
433 const Rec::TrackParticleContainer *cont,
434 const Rec::TrackParticle *track )
435 {
436 ElementLink<Rec::TrackParticleContainer> link;
437 link.toContainedElement( *cont, track ) ;
438 m_seedTrk_wideTrk.push_back( link ) ;
439 }
440
441 inline unsigned int TauCommonDetails::seedTrk_nWideTrk() const
442 {
443 return m_seedTrk_wideTrk.size();
444 }
445
446 //-----------------------------------------------------------------------
447 // OtherTrk - collection of other tracks
448 //-----------------------------------------------------------------------
449
450 inline const Rec::TrackParticle *TauCommonDetails::otherTrk(
451 unsigned int i ) const
452 {
453 if( m_otherTrk.size() <= i )
454 return 0;
455 else if( m_otherTrk[i].isValid() )
456 return *(m_otherTrk[i]);
457 else
458 return 0;
459 }
460
461 inline const ElementLinkVector<Rec::TrackParticleContainer>&
462 TauCommonDetails::otherTrk() const
463 {
464 return m_otherTrk;
465 }
466
467 inline ElementLinkVector<Rec::TrackParticleContainer>&
468 TauCommonDetails::otherTrk()
469 {
470 return m_otherTrk;
471 }
472
473 inline void TauCommonDetails::addOtherTrk(
474 const Rec::TrackParticleContainer *cont,
475 const Rec::TrackParticle *track )
476 {
477 ElementLink<Rec::TrackParticleContainer> link;
478 link.toContainedElement( *cont, track ) ;
479 m_otherTrk.push_back( link ) ;
480 }
481
482 inline unsigned int TauCommonDetails::nOtherTrk() const
483 {
484 return m_otherTrk.size();
485 }
486
487
488 //-------------------------------------------------------------------------
489 // chrgLooseTrk - charge of loose tracks
490 //-------------------------------------------------------------------------
491
492 inline double TauCommonDetails::chrgLooseTrk() const
493 {
494 return m_chrgLooseTrk;
495 }
496
497 inline void TauCommonDetails::setChrgLooseTrk(double charge)
498 {
499 m_chrgLooseTrk = charge;
500 }
501
502 //-------------------------------------------------------------------------
503 // cellEM0Cluster - EM calorimeter cell cluster
504 //-------------------------------------------------------------------------
505
506 inline const CaloCluster *TauCommonDetails::cellEM012Cluster() const
507 {
508 //Return cluster if valid cluster is set, 0 otherwise
509 return ( (m_cellEM012Cluster.isValid()) ? (*m_cellEM012Cluster) : 0 );
510 }
511
512 inline void TauCommonDetails::setCellEM012Cluster(
513 const CaloClusterContainer *cont,
514 const CaloCluster *clust )
515 {
516 //Reset if allready set
517 if( m_cellEM012Cluster.isValid() )
518 m_cellEM012Cluster.reset();
519 m_cellEM012Cluster.toContainedElement( *cont, clust);
520 }
521
522 inline const ElementLink<CaloClusterContainer>&
523 TauCommonDetails::cellEM012ClusterLink() const
524 {
525 return m_cellEM012Cluster;
526 }
527
528 inline ElementLink<CaloClusterContainer>&
529 TauCommonDetails::cellEM012ClusterLink()
530 {
531 return m_cellEM012Cluster;
532 }
533
534 inline void TauCommonDetails::setCellEM012ClusterLink(
535 const ElementLink<CaloClusterContainer> &x)
536 {
537 m_cellEM012Cluster = x;
538 }
539
540 //-------------------------------------------------------------------------
541 // m_sumPi0Vec - Pi0 energy sum vector
542 //-------------------------------------------------------------------------
543
544 inline const CLHEP::HepLorentzVector &TauCommonDetails::sumPi0Vec() const
545 {
546 return m_sumPi0Vec;
547 }
548
549 inline void TauCommonDetails::setSumPi0Vec(
550 const CLHEP::HepLorentzVector &sum )
551 {
552 m_sumPi0Vec = sum;
553 }
554
555
556 //-------------------------------------------------------------------------
557 // massTrkSys - track system invariant mass
558 //-------------------------------------------------------------------------
559
560 inline double TauCommonDetails::massTrkSys() const
561 {
562 return m_massTrkSys;
563 }
564
565 inline void TauCommonDetails::setMassTrkSys(double mass)
566 {
567 m_massTrkSys = mass;
568 }
569
570 //-------------------------------------------------------------------------
571 // trkWidth2 - track width ^2
572 //-------------------------------------------------------------------------
573
574 inline double TauCommonDetails::trkWidth2() const
575 {
576 return m_trkWidth2;
577 }
578
579 inline void TauCommonDetails::setTrkWidth2(double trkWidth2)
580 {
581 m_trkWidth2 = trkWidth2;
582 }
583
584 //-------------------------------------------------------------------------
585 // trFlightPathSig - Set Transverse flight path significance
586 //-------------------------------------------------------------------------
587
588 inline double TauCommonDetails::trFlightPathSig() const
589 {
590 return m_trFlightPathSig;
591 }
592
593 inline void TauCommonDetails::setTrFlightPathSig(
594 double significance )
595 {
596 m_trFlightPathSig=significance;
597 }
598
599 //-------------------------------------------------------------------------
600 // secVtx - Set secondary vertex
601 //-------------------------------------------------------------------------
602
603 inline const Trk::RecVertex* TauCommonDetails::secVtx() const
604 {
605 return m_secVtx;
606 }
607
608 inline void TauCommonDetails::setSecVtx(
609 const Trk::RecVertex* secVtx )
610 {
611 delete m_secVtx;
612 m_secVtx = secVtx ? new Trk::RecVertex(*secVtx) : nullptr;
613 }
614
615 //-------------------------------------------------------------------------
616 // etEflow - E_T from energy flow
617 //-------------------------------------------------------------------------
618
619 inline double TauCommonDetails::etEflow() const
620 {
621 return m_etEflow;
622 }
623
624 inline void TauCommonDetails::setEtEflow(
625 double et )
626 {
627 m_etEflow = et;
628 }
629
630 //-------------------------------------------------------------------------
631 // mEflow - mass from energy flow
632 //-------------------------------------------------------------------------
633
634 inline double TauCommonDetails::mEflow() const
635 {
636 return m_mEflow;
637 }
638
639 inline void TauCommonDetails::setMEflow(
640 double m )
641 {
642 m_mEflow = m;
643 }
644
645 //-------------------------------------------------------------------------
646 // pi0 - pi0 cluster
647 //-------------------------------------------------------------------------
648
649 inline const CaloCluster* TauCommonDetails::pi0(
650 unsigned int i) const
651 {
652 return *m_pi0[i];
653 }
654
655 inline const ElementLinkVector<CaloClusterContainer>&
656 TauCommonDetails::pi0LinkVec() const
657 {
658 return m_pi0;
659 }
660
661 inline ElementLinkVector<CaloClusterContainer>&
662 TauCommonDetails::pi0LinkVec()
663 {
664 return m_pi0;
665 }
666
667 inline unsigned int TauCommonDetails::nPi0() const
668 {
669 return m_pi0.size();
670 }
671
672 inline void TauCommonDetails::addPi0(
673 const CaloCluster *pi0,
674 const CaloClusterContainer *cont )
675 {
676 ElementLink<CaloClusterContainer> link;
677 if( !cont )
678 link.setElement( pi0 );
679 else
680 link.toContainedElement( *cont, pi0 );
681 m_pi0.push_back( link );
682 }
683
684
685 /// name accessors for electron LLH variables
686
687 /// get ratio of energy in window of 3X7 cells over 7X7 cells in second layer of ECAL
688 inline double TauCommonDetails::ele_E237E277() const
689 {
690 return m_Ele_E237E277;
691 }
692
693 /// set ratio of energy in window of 3X7 cells over 7X7 cells in second layer of ECAL
694 inline void TauCommonDetails::setEle_E237E277( double value )
695 {
696 m_Ele_E237E277 = value;
697 }
698
699 /// get fraction of EM cluster energy in presampler
700 inline double TauCommonDetails::ele_PresamplerFraction() const
701 {
702 return m_Ele_PresamplerFraction;
703 }
704
705 /// set fraction of EM cluster energy in presampler
706 inline void TauCommonDetails::setEle_PresamplerFraction( double value )
707 {
708 m_Ele_PresamplerFraction = value;
709 }
710
711
712 /// get fraction of EM cluster energy in first layer of ECAL
713 inline double TauCommonDetails::ele_ECALFirstFraction() const
714 {
715 return m_Ele_ECALFirstFraction;
716 }
717
718 /// set fraction of EM cluster energy in first layer of ECAL
719 inline void TauCommonDetails::setEle_ECALFirstFraction( double value )
720 {
721 m_Ele_ECALFirstFraction = value;
722 }
723
724
725 /// name accessors for topocluster ID variables
726
727 /// get number of cells associated to tau candidate
728 inline unsigned int TauCommonDetails::numCells() const
729 {
730 return m_numCells;
731 }
732
733 /// set number of cells associated to tau candidate
734 inline void TauCommonDetails::setNumCells( unsigned int value )
735 {
736 m_numCells = value;
737 }
738
739
740 /// get number of topoclusters associated to tau candidate
741 inline unsigned int TauCommonDetails::numTopoClusters() const
742 {
743 return m_numTopoClusters;
744 }
745
746 /// set number of topoclusters associated to tau candidate
747 inline void TauCommonDetails::setNumTopoClusters( unsigned int value )
748 {
749 m_numTopoClusters = value;
750 }
751
752
753 /// get number of topoclusters associated to tau candidate
754 inline double TauCommonDetails::numEffTopoClusters() const
755 {
756 return m_numEffTopoClusters;
757 }
758
759 /// set number of topoclusters associated to tau candidate
760 inline void TauCommonDetails::setNumEffTopoClusters( double value )
761 {
762 m_numEffTopoClusters = value;
763 }
764
765
766
767 /// get invariant mass of topoclusters associated to tau candidate
768 inline double TauCommonDetails::topoInvMass() const
769 {
770 return m_topoInvMass;
771 }
772
773 /// set invariant mass of topoclusters associated to tau candidate
774 inline void TauCommonDetails::setTopoInvMass( double value )
775 {
776 m_topoInvMass = value;
777 }
778
779
780 /// get invariant mass of effective topoclusters associated to tau candidate
781 inline double TauCommonDetails::effTopoInvMass() const
782 {
783 return m_effTopoInvMass;
784 }
785
786 /// set invariant mass of effective topoclusters associated to tau candidate
787 inline void TauCommonDetails::setEffTopoInvMass( double value )
788 {
789 m_effTopoInvMass = value;
790 }
791
792
793 /// get mean distance to leading topocluster for topoclusters associated to tau candidate
794 inline double TauCommonDetails::topoMeanDeltaR() const
795 {
796 return m_topoMeanDeltaR;
797 }
798
799 /// set mean distance to leading topocluster for topoclusters associated to tau candidate
800 inline void TauCommonDetails::setTopoMeanDeltaR( double value )
801 {
802 m_topoMeanDeltaR = value;
803 }
804
805
806 /// get mean distance to leading topocluster for effective topoclusters associated to tau candidate
807 inline double TauCommonDetails::effTopoMeanDeltaR() const
808 {
809 return m_effTopoMeanDeltaR;
810 }
811
812 /// set mean distance to leading topocluster for effective topoclusters associated to tau candidate
813 inline void TauCommonDetails::setEffTopoMeanDeltaR( double value )
814 {
815 m_effTopoMeanDeltaR = value;
816 }
817
818
819 /////////////////////////////////////////////////////////////////////
820 //
821 // Applicable for calo seeded tau reconstruction
822 //
823 /////////////////////////////////////////////////////////////////////
824
825 //-------------------------------------------------------------------------
826 // seedCalo_EMRadius - E_T radius
827 //-------------------------------------------------------------------------
828
829 inline double TauCommonDetails::seedCalo_EMRadius() const
830 {
831 return m_seedCalo_EMRadius;
832 }
833
834 inline void TauCommonDetails::setSeedCalo_EMRadius(
835 double EMRadius)
836 {
837 m_seedCalo_EMRadius=EMRadius;
838 }
839
840 //-------------------------------------------------------------------------
841 // seedCaol_hadRadius - Hadron calorimeter radius
842 //-------------------------------------------------------------------------
843
844 inline double TauCommonDetails::seedCalo_hadRadius() const
845 {
846 return m_seedCalo_hadRadius;
847 }
848
849 inline void TauCommonDetails::setSeedCalo_hadRadius(
850 double hadRadius)
851 {
852 m_seedCalo_hadRadius=hadRadius;
853 }
854
855 //-------------------------------------------------------------------------
856 // seedCalo_etEMAtEMScale - EM energy at EM scale
857 //-------------------------------------------------------------------------
858
859 inline double TauCommonDetails::seedCalo_etEMAtEMScale() const
860 {
861 return m_seedCalo_etEMAtEMScale;
862 }
863
864 inline void TauCommonDetails::setSeedCalo_etEMAtEMScale(
865 double energy)
866 {
867 m_seedCalo_etEMAtEMScale=energy;
868 }
869
870 //-------------------------------------------------------------------------
871 // seedCalo_etHadAtEMScale - Hadronic energy at EM scale
872 //-------------------------------------------------------------------------
873
874 inline double TauCommonDetails::seedCalo_etHadAtEMScale() const
875 {
876 return m_seedCalo_etHadAtEMScale;
877 }
878
879 inline void TauCommonDetails::setSeedCalo_etHadAtEMScale(
880 double energy)
881 {
882 m_seedCalo_etHadAtEMScale=energy;
883 }
884
885 //-------------------------------------------------------------------------
886 // seedCalo_isolFrac - Isolation fraction
887 //-------------------------------------------------------------------------
888
889 inline double TauCommonDetails::seedCalo_isolFrac() const
890 {
891 return m_seedCalo_isolFrac;
892 }
893
894 inline void TauCommonDetails::setSeedCalo_isolFrac(
895 double isolFrac)
896 {
897 m_seedCalo_isolFrac=isolFrac;
898 }
899
900 //-------------------------------------------------------------------------
901 // seedCalo_centFrac - Centrality fraction
902 //-------------------------------------------------------------------------
903
904 inline double TauCommonDetails::seedCalo_centFrac() const
905 {
906 return m_seedCalo_centFrac;
907 }
908
909 inline void TauCommonDetails::setSeedCalo_centFrac(
910 double centFrac)
911 {
912 m_seedCalo_centFrac=centFrac;
913 }
914
915 //-------------------------------------------------------------------------
916 // seedCalo_stripWidth2 - Strip width ^2
917 //-------------------------------------------------------------------------
918
919 inline double TauCommonDetails::seedCalo_stripWidth2() const
920 {
921 return m_seedCalo_stripWidth2;
922 }
923
924 inline void TauCommonDetails::setSeedCalo_stripWidth2(
925 double stripWidth2)
926 {
927 m_seedCalo_stripWidth2=stripWidth2;
928 }
929
930 //-------------------------------------------------------------------------
931 // seedCalo_nStrip - Number of strips
932 //-------------------------------------------------------------------------
933
934 inline int TauCommonDetails::seedCalo_nStrip() const
935 {
936 return m_seedCalo_nStrip;
937 }
938
939 inline void TauCommonDetails::setSeedCalo_nStrip(
940 int nStrip)
941 {
942 m_seedCalo_nStrip=nStrip;
943 }
944
945 //-----------------------------------------------------------------------
946 // seedCalo_etEMCalib - Calibrated EM E_T
947 //-----------------------------------------------------------------------
948
949 inline double TauCommonDetails::seedCalo_etEMCalib() const
950 {
951 return m_seedCalo_etEMCalib;
952 }
953
954 inline void TauCommonDetails::setSeedCalo_etEMCalib(
955 double etEMCalib)
956 {
957 m_seedCalo_etEMCalib=etEMCalib;
958 }
959 //-----------------------------------------------------------------------
960 // seedCalo_etHadCalib - Calibrated hadronic E_T
961 //-----------------------------------------------------------------------
962
963 inline double TauCommonDetails::seedCalo_etHadCalib() const
964 {
965 return m_seedCalo_etHadCalib;
966 }
967
968 inline void TauCommonDetails::setSeedCalo_etHadCalib(
969 double etHadCalib)
970 {
971 m_seedCalo_etHadCalib=etHadCalib;
972 }
973
974 //-----------------------------------------------------------------------
975 // seedCalo_eta - TauJet Eta from calorimeter
976 //-----------------------------------------------------------------------
977
978 inline double TauCommonDetails::seedCalo_eta() const
979 {
980 return m_seedCalo_eta;
981 }
982
983 inline void TauCommonDetails::setSeedCalo_eta(
984 double eta)
985 {
986 m_seedCalo_eta=eta;
987 }
988
989 //-----------------------------------------------------------------------
990 // seedCalo_phi - TauJet phi from calorimeter
991 //-----------------------------------------------------------------------
992
993 inline double TauCommonDetails::seedCalo_phi() const
994 {
995 return m_seedCalo_phi;
996 }
997
998 inline void TauCommonDetails::setSeedCalo_phi(
999 double phi)
1000 {
1001 m_seedCalo_phi=phi;
1002 }
1003
1004 //-----------------------------------------------------------------------
1005 // seedCalo_nIsolLooseTrk - Number of isolated track
1006 //-----------------------------------------------------------------------
1007
1008 inline double TauCommonDetails::seedCalo_nIsolLooseTrk() const
1009 {
1010 return m_seedCalo_nIsolLooseTrk;
1011 }
1012
1013 inline void TauCommonDetails::setSeedCalo_nIsolLooseTrk(
1014 double nIsolTRk )
1015 {
1016 m_seedCalo_nIsolLooseTrk=nIsolTRk;
1017 }
1018
1019 //-----------------------------------------------------------------------
1020 // seedCalo_trkAvgDist - average track distance from calo seed
1021 //-----------------------------------------------------------------------
1022
1023 inline double TauCommonDetails::seedCalo_trkAvgDist() const
1024 {
1025 return m_seedCalo_trkAvgDist;
1026 }
1027
1028 inline void TauCommonDetails::setSeedCalo_trkAvgDist(
1029 double trkAvgDist )
1030 {
1031 m_seedCalo_trkAvgDist=trkAvgDist;
1032 }
1033
1034
1035 //-----------------------------------------------------------------------
1036 // seedCalo_trkRmsDist - RMS of track distance from calo seed
1037 //-----------------------------------------------------------------------
1038
1039 inline double TauCommonDetails::seedCalo_trkRmsDist() const
1040 {
1041 return m_seedCalo_trkRmsDist;
1042 }
1043
1044 inline void TauCommonDetails::setSeedCalo_trkRmsDist(
1045 double trkRmsDist )
1046 {
1047 m_seedCalo_trkRmsDist=trkRmsDist;
1048 }
1049
1050 //-----------------------------------------------------------------------
1051 // sum of 2 leading cluster energy over all cluster energy
1052 //-----------------------------------------------------------------------
1053
1054 inline double TauCommonDetails::seedCalo_lead2ClusterEOverAllClusterE() const
1055 {
1056 return m_seedCalo_lead2ClusterEOverAllClusterE;
1057 }
1058
1059 inline void TauCommonDetails::setSeedCalo_lead2ClusterEOverAllClusterE( double lead2ClusterEOverAllClusterE )
1060 {
1061 m_seedCalo_lead2ClusterEOverAllClusterE = lead2ClusterEOverAllClusterE;
1062 }
1063
1064 //-----------------------------------------------------------------------
1065 // sum of 3 leading cluster energy over all cluster energy
1066 //-----------------------------------------------------------------------
1067 inline double TauCommonDetails::seedCalo_lead3ClusterEOverAllClusterE() const
1068 {
1069 return m_seedCalo_lead3ClusterEOverAllClusterE;
1070 }
1071
1072 inline void TauCommonDetails::setSeedCalo_lead3ClusterEOverAllClusterE( double lead3ClusterEOverAllClusterE )
1073 {
1074 m_seedCalo_lead3ClusterEOverAllClusterE = lead3ClusterEOverAllClusterE;
1075 }
1076
1077 //-----------------------------------------------------------------------
1078 // sum of transvers energy of clusters around jet seed within 0.2 < dR < 0.4
1079 //-----------------------------------------------------------------------
1080 inline double TauCommonDetails::seedCalo_caloIso() const
1081 {
1082 return m_seedCalo_caloIso;
1083 }
1084
1085 inline void TauCommonDetails::setSeedCalo_caloIso( double caloIso )
1086 {
1087 m_seedCalo_caloIso = caloIso;
1088 }
1089
1090 //-----------------------------------------------------------------------
1091 // sum of transvers energy of clusters around jet seed within 0.2 < dR < 0.4 (pile up corrected)
1092 //-----------------------------------------------------------------------
1093 inline double TauCommonDetails::seedCalo_caloIsoCorrected() const
1094 {
1095 return m_seedCalo_caloIsoCorrected;
1096 }
1097
1098 inline void TauCommonDetails::setSeedCalo_caloIsoCorrected( double caloIsoCorrected )
1099 {
1100 m_seedCalo_caloIsoCorrected = caloIsoCorrected;
1101 }
1102
1103 //-----------------------------------------------------------------------
1104 // maximal dR of tracks associated to calo-seeded tau
1105 //-----------------------------------------------------------------------
1106 inline double TauCommonDetails::seedCalo_dRmax() const
1107 {
1108 return m_seedCalo_dRmax;
1109 }
1110
1111 inline void TauCommonDetails::setSeedCalo_dRmax( double dRmax )
1112 {
1113 m_seedCalo_dRmax = dRmax;
1114 }
1115
1116
1117
1118 /////////////////////////////////////////////////////////////////////
1119 //
1120 // Applicable for track seeded tau reconstruction
1121 //
1122 /////////////////////////////////////////////////////////////////////
1123
1124 //-------------------------------------------------------------------------
1125 // m_seedTrk_EMRadius - EM Radius
1126 //-------------------------------------------------------------------------
1127
1128 inline double TauCommonDetails::seedTrk_EMRadius() const
1129 {
1130 return m_seedTrk_EMRadius;
1131 }
1132
1133 inline void TauCommonDetails::setSeedTrk_EMRadius(
1134 double EMRadius )
1135 {
1136 m_seedTrk_EMRadius = EMRadius;
1137 }
1138
1139 //------------------------------------------------------------------------
1140 // m_seedTrk_isolFrac - isolation fraction
1141 //------------------------------------------------------------------------
1142
1143 inline double TauCommonDetails::seedTrk_isolFrac() const
1144 {
1145 return m_seedTrk_isolFrac;
1146 }
1147
1148 inline void TauCommonDetails::setSeedTrk_isolFrac(
1149 double isolFrac )
1150 {
1151 m_seedTrk_isolFrac = isolFrac;
1152 }
1153
1154 //-----------------------------------------------------------------------
1155 // etChrgHadOverSumTrkPt - E_T over P_t
1156 //-----------------------------------------------------------------------
1157
1158 inline double TauCommonDetails::seedTrk_etChrgHadOverSumTrkPt () const
1159 {
1160 return m_seedTrk_etChrgHadOverSumTrkPt ;
1161 }
1162
1163 inline void TauCommonDetails::setSeedTrk_etChrgHadOverSumTrkPt (
1164 double ratio )
1165 {
1166 m_seedTrk_etChrgHadOverSumTrkPt = ratio;
1167 }
1168
1169 //-----------------------------------------------------------------------
1170 // isolFracWide - wide isolation fraction
1171 //-----------------------------------------------------------------------
1172
1173 inline double TauCommonDetails::seedTrk_isolFracWide() const
1174 {
1175 return m_seedTrk_isolFracWide;
1176 }
1177
1178 inline void TauCommonDetails::setSeedTrk_isolFracWide(
1179 double fraction )
1180 {
1181 m_seedTrk_isolFracWide = fraction;
1182 }
1183
1184 //-----------------------------------------------------------------------
1185 // seedTrk_etHadAtEMScale
1186 //-----------------------------------------------------------------------
1187
1188 inline double TauCommonDetails::seedTrk_etHadAtEMScale () const
1189 {
1190 return m_seedTrk_etHadAtEMScale ;
1191 }
1192
1193 inline void TauCommonDetails::setSeedTrk_etHadAtEMScale (
1194 double et )
1195 {
1196 m_seedTrk_etHadAtEMScale = et;
1197 }
1198
1199 //-----------------------------------------------------------------------
1200 // seedTrk_etEMAtEMScale
1201 //-----------------------------------------------------------------------
1202
1203 inline double TauCommonDetails::seedTrk_etEMAtEMScale () const
1204 {
1205 return m_seedTrk_etEMAtEMScale ;
1206 }
1207
1208 inline void TauCommonDetails::setSeedTrk_etEMAtEMScale (
1209 double et )
1210 {
1211 m_seedTrk_etEMAtEMScale = et;
1212 }
1213
1214 //-----------------------------------------------------------------------
1215 // seedTrk_etEMCL
1216 //-----------------------------------------------------------------------
1217
1218 inline double TauCommonDetails::seedTrk_etEMCL () const
1219 {
1220 return m_seedTrk_etEMCL ;
1221 }
1222
1223 inline void TauCommonDetails::setSeedTrk_etEMCL (
1224 double et )
1225 {
1226 m_seedTrk_etEMCL = et;
1227 }
1228
1229 //-----------------------------------------------------------------------
1230 // seedTrk_etChrgEM - E_T of charged EM cells
1231 //-----------------------------------------------------------------------
1232
1233 inline double TauCommonDetails::seedTrk_etChrgEM () const
1234 {
1235 return m_seedTrk_etChrgEM ;
1236 }
1237
1238 inline void TauCommonDetails::setSeedTrk_etChrgEM (
1239 double et )
1240 {
1241 m_seedTrk_etChrgEM = et;
1242 }
1243
1244 //-----------------------------------------------------------------------
1245 // seedTrk_etNeuEM - E_T of neutral EM cells
1246 //-----------------------------------------------------------------------
1247
1248 inline double TauCommonDetails::seedTrk_etNeuEM () const
1249 {
1250 return m_seedTrk_etNeuEM ;
1251 }
1252
1253 inline void TauCommonDetails::setSeedTrk_etNeuEM (
1254 double et )
1255 {
1256 m_seedTrk_etNeuEM = et;
1257 }
1258
1259 //-----------------------------------------------------------------------
1260 // seedTrk_etResNeuEM - eflow correction term
1261 //-----------------------------------------------------------------------
1262
1263 inline double TauCommonDetails::seedTrk_etResNeuEM () const
1264 {
1265 return m_seedTrk_etResNeuEM ;
1266 }
1267
1268 inline void TauCommonDetails::setSeedTrk_etResNeuEM (
1269 double et )
1270 {
1271 m_seedTrk_etResNeuEM = et;
1272 }
1273
1274 //-----------------------------------------------------------------------
1275 // seedTrk_sumEMCellEtOverLeadTrkPt - LAr+EM E_T/leading track p_T
1276 //-----------------------------------------------------------------------
1277
1278 inline double TauCommonDetails::seedTrk_sumEMCellEtOverLeadTrkPt() const
1279 {
1280 return m_seedTrk_sumEMCellEtOverLeadTrkPt ;
1281 }
1282
1283 inline void TauCommonDetails::setSeedTrk_sumEMCellEtOverLeadTrkPt(
1284 double ratio )
1285 {
1286 m_seedTrk_sumEMCellEtOverLeadTrkPt = ratio;
1287 }
1288
1289 //-----------------------------------------------------------------------
1290 // seedTrk_hadLeakEt - hadronic leakage in EM summed over all cells
1291 //-----------------------------------------------------------------------
1292
1293 inline double TauCommonDetails::seedTrk_hadLeakEt () const
1294 {
1295 return m_seedTrk_hadLeakEt ;
1296 }
1297
1298 inline void TauCommonDetails::setSeedTrk_hadLeakEt (
1299 double et )
1300 {
1301 m_seedTrk_hadLeakEt = et;
1302 }
1303
1304 //-----------------------------------------------------------------------
1305 // seedTrk_etChrgEM01Trk - E_T around track
1306 //-----------------------------------------------------------------------
1307
1308 inline double TauCommonDetails::seedTrk_etChrgEM01Trk(
1309 unsigned int i ) const
1310 {
1311 return ( m_seedTrk_etChrgEM01Trk.size()>i) ?
1312 m_seedTrk_etChrgEM01Trk[i] : 0.;
1313 }
1314
1315 inline const std::vector<double>& TauCommonDetails::seedTrk_etChrgEM01TrkVector() const
1316 {
1317 return m_seedTrk_etChrgEM01Trk;
1318 }
1319
1320 inline void TauCommonDetails::setSeedTrk_etChrgEM01Trk(
1321 unsigned int i,
1322 double et )
1323 {
1324 if( m_seedTrk_etChrgEM01Trk.size() < i )
1325 m_seedTrk_etChrgEM01Trk[i] = et;
1326 }
1327
1328 template <class ITERATOR>
1329 inline void TauCommonDetails::setSeedTrk_etChrgEM01Trk(
1330 ITERATOR beg,
1331 ITERATOR end )
1332 {
1333 m_seedTrk_etChrgEM01Trk.assign (beg, end);
1334 }
1335
1336 inline void TauCommonDetails::addSeedTrk_etChrgEM01Trk(
1337 double et )
1338 {
1339 m_seedTrk_etChrgEM01Trk.push_back( et );
1340 }
1341
1342 //-----------------------------------------------------------------------
1343 // seedTrk_etResChrgEMTrk - correction term for eflow
1344 //-----------------------------------------------------------------------
1345
1346 inline double TauCommonDetails::seedTrk_etResChrgEMTrk(
1347 unsigned int i ) const
1348 {
1349 return ( m_seedTrk_etResChrgEMTrk.size()>i) ?
1350 m_seedTrk_etResChrgEMTrk[i] : 0.;
1351 }
1352
1353 inline const std::vector<double>& TauCommonDetails::seedTrk_etResChrgEMTrkVector() const
1354 {
1355 return m_seedTrk_etResChrgEMTrk;
1356 }
1357
1358 inline void TauCommonDetails::setSeedTrk_etResChrgEMTrk(
1359 unsigned int i,
1360 double et )
1361 {
1362 if( m_seedTrk_etResChrgEMTrk.size() < i )
1363 m_seedTrk_etResChrgEMTrk[i] = et;
1364 }
1365
1366 template <class ITERATOR>
1367 inline void TauCommonDetails::setSeedTrk_etResChrgEMTrk(
1368 ITERATOR beg,
1369 ITERATOR end )
1370 {
1371 m_seedTrk_etResChrgEMTrk.assign (beg, end);
1372 }
1373
1374 inline void TauCommonDetails::addSeedTrk_etResChrgEMTrk(
1375 double et )
1376 {
1377 m_seedTrk_etResChrgEMTrk.push_back( et );
1378 }
1379
1380 //-----------------------------------------------------------------------
1381 // seedTrk_secMaxStripEt - secondary maximum
1382 //-----------------------------------------------------------------------
1383
1384 inline double TauCommonDetails::seedTrk_secMaxStripEt () const
1385 {
1386 return m_seedTrk_secMaxStripEt ;
1387 }
1388
1389 inline void TauCommonDetails::setSeedTrk_secMaxStripEt (
1390 double et )
1391 {
1392 m_seedTrk_secMaxStripEt = et;
1393 }
1394
1395 //-----------------------------------------------------------------------
1396 // seedTrk_StripWidth^2 - strip width ^2
1397 //-----------------------------------------------------------------------
1398
1399 inline double TauCommonDetails::seedTrk_stripWidth2() const
1400 {
1401 return m_seedTrk_stripWidth2;
1402 }
1403
1404 inline void TauCommonDetails::setSeedTrk_stripWidth2(
1405 double stripWidth2 )
1406 {
1407 m_seedTrk_stripWidth2 = stripWidth2;
1408 }
1409
1410 //-----------------------------------------------------------------------
1411 // seedTrk_nStrip - number of strips
1412 //-----------------------------------------------------------------------
1413 inline int TauCommonDetails::seedTrk_nStrip() const
1414 {
1415 return m_seedTrk_nStrip;
1416 }
1417
1418 inline void TauCommonDetails::setSeedTrk_nStrip(
1419 int nStrip )
1420 {
1421 m_seedTrk_nStrip=nStrip;
1422 }
1423
1424 //-----------------------------------------------------------------------
1425 // seedTrk_etChrgHad - Charged E_T in Had calo in hadronic calorimeter
1426 //-----------------------------------------------------------------------
1427
1428 inline double TauCommonDetails::seedTrk_etChrgHad() const
1429 {
1430 return m_seedTrk_etChrgHad;
1431 }
1432
1433 inline void TauCommonDetails::setSeedTrk_etChrgHad(
1434 double et )
1435 {
1436 m_seedTrk_etChrgHad = et;
1437 }
1438
1439 //-----------------------------------------------------------------------
1440 // seedTrk_nOtherCoreTrk - number of other tracks
1441 //-----------------------------------------------------------------------
1442
1443 inline int TauCommonDetails::seedTrk_nOtherCoreTrk() const
1444 {
1445 return m_seedTrk_nOtherCoreTrk;
1446 }
1447
1448 inline void TauCommonDetails::setSeedTrk_nOtherCoreTrk(
1449 int n )
1450 {
1451 m_seedTrk_nOtherCoreTrk = n;
1452 }
1453
1454 //-----------------------------------------------------------------------
1455 // seedTrk_nIsolTrk - number of isolated tracks
1456 //-----------------------------------------------------------------------
1457
1458 inline int TauCommonDetails::seedTrk_nIsolTrk() const
1459 {
1460 return m_seedTrk_nIsolTrk;
1461 }
1462
1463 inline void TauCommonDetails::setSeedTrk_nIsolTrk(
1464 int n )
1465 {
1466 m_seedTrk_nIsolTrk = n;
1467 }
1468
1469 //-----------------------------------------------------------------------
1470 // seedTrk_etIsolEM - transverse energy in EM calo
1471 //-----------------------------------------------------------------------
1472
1473 inline double TauCommonDetails::seedTrk_etIsolEM() const
1474 {
1475 return m_seedTrk_etIsolEM;
1476 }
1477
1478 inline void TauCommonDetails::setSeedTrk_etIsolEM(
1479 double etIsolEM )
1480 {
1481 m_seedTrk_etIsolEM=etIsolEM;
1482 }
1483
1484 //-----------------------------------------------------------------------
1485 // seedTrk_etIsolHad - Get transverse energy in Had calo
1486 //-----------------------------------------------------------------------
1487
1488 inline double TauCommonDetails::seedTrk_etIsolHad() const
1489 {
1490 return m_seedTrk_etIsolHad;
1491 }
1492
1493 inline void TauCommonDetails::setSeedTrk_etIsolHad(
1494 double etIsolHad )
1495 {
1496 m_seedTrk_etIsolHad = etIsolHad;
1497 }
1498
1499 ///////////////////////////////////////////////////
1500 //
1501 // Energy Scale getter/setters
1502 //
1503 ///////////////////////////////////////////////////
1504
1505 /// get EM+TES final scale
1506 inline double TauCommonDetails::EM_TES_scale() const
1507 {
1508 return m_EM_TES_scale;
1509 }
1510
1511 /// set EM+TES final scale
1512 inline void TauCommonDetails::set_EM_TES_scale(double value)
1513 {
1514 m_EM_TES_scale = value;
1515 }
1516
1517 /// get LC+TES precalibration
1518 inline double TauCommonDetails::LC_TES_precalib() const
1519 {
1520 return m_LC_TES_precalib;
1521 }
1522
1523 /// set LC+TES precalibration
1524 inline void TauCommonDetails::set_LC_TES_precalib(double value)
1525 {
1526 m_LC_TES_precalib = value;
1527 }
1528 //@}
1529
1530 //////////////////////////////////////////////////////////////////////
1531 //
1532 // Cell-based energies in rings getters/setters
1533 //
1534 //////////////////////////////////////////////////////////////////////
1535 /// Ring 1: 0.00 < R < 0.05
1536 inline double TauCommonDetails::cellBasedEnergyRing1() const
1537 {
1538 return m_cellBasedEnergyRing1;
1539
1540 }
1541
1542 inline void TauCommonDetails::setCellBasedEnergyRing1(double value)
1543 {
1544 m_cellBasedEnergyRing1 = value;
1545
1546 }
1547
1548 /// Ring 2: 0.05 < R < 0.075
1549 inline double TauCommonDetails::cellBasedEnergyRing2() const
1550 {
1551 return m_cellBasedEnergyRing2;
1552
1553 }
1554
1555 inline void TauCommonDetails::setCellBasedEnergyRing2(double value)
1556 {
1557 m_cellBasedEnergyRing2 = value;
1558
1559 }
1560
1561 /// Ring 3: 0.075 < R < 0.10
1562 inline double TauCommonDetails::cellBasedEnergyRing3() const
1563 {
1564 return m_cellBasedEnergyRing3;
1565
1566 }
1567
1568 inline void TauCommonDetails::setCellBasedEnergyRing3(double value)
1569 {
1570 m_cellBasedEnergyRing3 = value;
1571
1572 }
1573
1574 /// Ring 4: 0.10 < R < 0.125
1575 inline double TauCommonDetails::cellBasedEnergyRing4() const
1576 {
1577 return m_cellBasedEnergyRing4;
1578
1579 }
1580
1581 inline void TauCommonDetails::setCellBasedEnergyRing4(double value)
1582 {
1583 m_cellBasedEnergyRing4 = value;
1584
1585 }
1586
1587 /// Ring 5: 0.125 < R < 0.15
1588 inline double TauCommonDetails::cellBasedEnergyRing5() const
1589 {
1590 return m_cellBasedEnergyRing5;
1591
1592 }
1593
1594 inline void TauCommonDetails::setCellBasedEnergyRing5(double value)
1595 {
1596 m_cellBasedEnergyRing5 = value;
1597
1598 }
1599
1600 /// Ring 6: 0.15 < R < 0.2
1601 inline double TauCommonDetails::cellBasedEnergyRing6() const
1602 {
1603 return m_cellBasedEnergyRing6;
1604
1605 }
1606
1607 inline void TauCommonDetails::setCellBasedEnergyRing6(double value)
1608 {
1609 m_cellBasedEnergyRing6 = value;
1610
1611 }
1612
1613 /// Ring 7: 0.2 < R < 0.4
1614 inline double TauCommonDetails::cellBasedEnergyRing7() const
1615 {
1616 return m_cellBasedEnergyRing7;
1617
1618 }
1619
1620 inline void TauCommonDetails::setCellBasedEnergyRing7(double value)
1621 {
1622 m_cellBasedEnergyRing7 = value;
1623
1624 }
1625
1626 /// TRT hits high thresholds over low thresholds
1627 inline double TauCommonDetails::TRT_NHT_OVER_NLT() const
1628 {
1629 return m_TRT_NHT_OVER_NLT;
1630 }
1631
1632 inline void TauCommonDetails::setTRT_NHT_OVER_NLT(double value)
1633 {
1634 m_TRT_NHT_OVER_NLT = value;
1635 }
1636
1637 //-----------------------------------------------------------------------
1638 // TJVF - TauJetVtxFraction getter/setter
1639 //-----------------------------------------------------------------------
1640
1641 inline double TauCommonDetails::TauJetVtxFraction() const
1642 {
1643 return m_TauJetVtxFraction;
1644 }
1645
1646 inline void TauCommonDetails::setTauJetVtxFraction(double value )
1647 {
1648 m_TauJetVtxFraction = value;
1649 }
1650
1651 //-----------------------------------------------------------------------
1652 // Track Filter and Generic Pi0 Cone
1653 //-----------------------------------------------------------------------
1654
1655 // vector bool of which tracks pass the track filter
1656 inline const std::vector<bool>& TauCommonDetails::TrackFilterPass() const
1657 {
1658 return m_TrackFilterPass;
1659 }
1660
1661 inline void TauCommonDetails::setTrackFilterPass(const std::vector<bool>& value)
1662 {
1663 m_TrackFilterPass = value;
1664 }
1665
1666 // nProng based on what the track filter passes
1667 inline int TauCommonDetails::TrackFilterProngs() const
1668 {
1669 return m_TrackFilterProngs;
1670 }
1671
1672 inline void TauCommonDetails::setTrackFilterProngs(int value)
1673 {
1674 m_TrackFilterProngs = value;
1675 }
1676
1677 // flag used to ID probable fake taus by the track filter
1678 inline int TauCommonDetails::TrackFilterQuality() const
1679 {
1680 return m_TrackFilterQuality;
1681 }
1682
1683 inline void TauCommonDetails::setTrackFilterQuality(int value)
1684 {
1685 m_TrackFilterQuality = value;
1686 }
1687
1688 // generic cone size (dR)
1689 inline double TauCommonDetails::Pi0ConeDR() const
1690 {
1691 return m_Pi0ConeDR;
1692 }
1693
1694 inline void TauCommonDetails::setPi0ConeDR(double value)
1695 {
1696 m_Pi0ConeDR = value;
1697 }
1698
1699}