#include <REROOT_StdHep.h>
Public Member Functions | |
| REROOT_StdHep (STDHEP_DEF *) | |
| REROOT_StdHep () | |
| ~REROOT_StdHep () | |
| virtual void | accept (REROOT_Visitor &v) |
| void | clear () |
| void | printEvent (std::ostream &) const |
| Int_t | ID () const |
| Int_t | IstHEP () const |
| Int_t | IdHEP () const |
| Int_t | FirstParent () const |
| Int_t | LastParent () const |
| Int_t | FirstChild () const |
| Int_t | LastChild () const |
| Float_t | Px () const |
| Float_t | Py () const |
| Float_t | Pz () const |
| Float_t | E () const |
| Float_t | Mass () const |
| Float_t | Xmm () const |
| Float_t | Ymm () const |
| Float_t | Zmm () const |
| Float_t | Tprod () const |
Static Public Member Functions | |
| static void | SetLimitZOffset (Int_t iszoff) |
| static Int_t | GetLimitZOffset () |
Private Member Functions | |
| void | init () |
Private Attributes | |
| Int_t | m_ID |
| Int_t | m_IstHEP |
| Int_t | m_IdHEP |
| Int_t | m_JmoHEP [2] |
| Int_t | m_JdaHEP [2] |
| Float_t | m_PHEP [5] |
| Float_t | m_VHEP [4] |
Static Private Attributes | |
| static Int_t | fg_LimitZOffset = 3 |
Definition at line 17 of file REROOT_StdHep.h.
| REROOT_StdHep::REROOT_StdHep | ( | STDHEP_DEF * | ) |
Definition at line 62 of file REROOT_StdHep.cxx.
References init().
00063 { 00064 m_ID = nr->ID - 1; // C index 00065 m_IstHEP = nr->IstHEP; 00066 m_IdHEP = nr->IdHEP; 00067 00068 // Fill simple arrays from StdHep struct. 00069 int i; 00070 for (i=0; i<2; i++) { 00071 m_JmoHEP[i] = nr->JmoHEP[i] - 1; // C index 00072 m_JdaHEP[i] = nr->JdaHEP[i] - 1; // C index 00073 } 00074 for (i=0; i<5; i++) { 00075 m_PHEP[i] = nr->PHEP[i]; 00076 } 00077 for (i=0; i<4; i++) { 00078 m_VHEP[i] = nr->VHEP[i]; 00079 } 00080 00081 init(); 00082 }
| REROOT_StdHep::REROOT_StdHep | ( | ) |
| REROOT_StdHep::~REROOT_StdHep | ( | ) |
| virtual void REROOT_StdHep::accept | ( | REROOT_Visitor & | v | ) | [inline, virtual] |
Definition at line 38 of file REROOT_StdHep.h.
References REROOT_Visitor::visit().
00038 { v.visit(this); }
| void REROOT_StdHep::clear | ( | ) |
| Float_t REROOT_StdHep::E | ( | ) | const [inline] |
Definition at line 58 of file REROOT_StdHep.h.
References m_PHEP.
Referenced by UberDST::Ana(), make_std_hep_list(), and MINFast::ProcessEvent().
00058 {return m_PHEP[3]; }
| Int_t REROOT_StdHep::FirstChild | ( | ) | const [inline] |
Definition at line 53 of file REROOT_StdHep.h.
References m_JdaHEP.
Referenced by make_std_hep_list(), and MINFast::ProcessEvent().
00053 {return m_JdaHEP[0]; }
| Int_t REROOT_StdHep::FirstParent | ( | ) | const [inline] |
Definition at line 51 of file REROOT_StdHep.h.
References m_JmoHEP.
Referenced by make_std_hep_list(), and MINFast::ProcessEvent().
00051 {return m_JmoHEP[0]; }
| static Int_t REROOT_StdHep::GetLimitZOffset | ( | ) | [inline, static] |
Definition at line 66 of file REROOT_StdHep.h.
References fg_LimitZOffset.
00066 { return fg_LimitZOffset; }
| Int_t REROOT_StdHep::ID | ( | ) | const [inline] |
Definition at line 44 of file REROOT_StdHep.h.
References m_ID.
Referenced by UberDST::Ana().
00044 {return m_ID; } // ID
| Int_t REROOT_StdHep::IdHEP | ( | ) | const [inline] |
Definition at line 46 of file REROOT_StdHep.h.
References m_IdHEP.
Referenced by make_std_hep_list(), and MINFast::ProcessEvent().
00046 {return m_IdHEP; } // IdHEP
| void REROOT_StdHep::init | ( | ) | [private] |
| Int_t REROOT_StdHep::IstHEP | ( | ) | const [inline] |
Definition at line 45 of file REROOT_StdHep.h.
References m_IstHEP.
Referenced by make_std_hep_list(), and MINFast::ProcessEvent().
00045 {return m_IstHEP; } // IstHEP
| Int_t REROOT_StdHep::LastChild | ( | ) | const [inline] |
Definition at line 54 of file REROOT_StdHep.h.
References m_JdaHEP.
Referenced by make_std_hep_list(), and MINFast::ProcessEvent().
00054 {return m_JdaHEP[1]; }
| Int_t REROOT_StdHep::LastParent | ( | ) | const [inline] |
Definition at line 52 of file REROOT_StdHep.h.
References m_JmoHEP.
Referenced by make_std_hep_list().
00052 {return m_JmoHEP[1]; }
| Float_t REROOT_StdHep::Mass | ( | ) | const [inline] |
Definition at line 59 of file REROOT_StdHep.h.
References m_PHEP.
Referenced by MINFast::ProcessEvent().
00059 {return m_PHEP[4]; }
| void REROOT_StdHep::printEvent | ( | std::ostream & | ) | const |
| Float_t REROOT_StdHep::Px | ( | ) | const [inline] |
Definition at line 55 of file REROOT_StdHep.h.
References m_PHEP.
Referenced by UberDST::Ana(), make_std_hep_list(), and MINFast::ProcessEvent().
00055 {return m_PHEP[0]; }
| Float_t REROOT_StdHep::Py | ( | ) | const [inline] |
Definition at line 56 of file REROOT_StdHep.h.
References m_PHEP.
Referenced by UberDST::Ana(), make_std_hep_list(), and MINFast::ProcessEvent().
00056 {return m_PHEP[1]; }
| Float_t REROOT_StdHep::Pz | ( | ) | const [inline] |
Definition at line 57 of file REROOT_StdHep.h.
References m_PHEP.
Referenced by UberDST::Ana(), make_std_hep_list(), and MINFast::ProcessEvent().
00057 {return m_PHEP[2]; }
| static void REROOT_StdHep::SetLimitZOffset | ( | Int_t | iszoff | ) | [inline, static] |
Definition at line 65 of file REROOT_StdHep.h.
References fg_LimitZOffset.
00065 { fg_LimitZOffset = iszoff; }
| Float_t REROOT_StdHep::Tprod | ( | ) | const [inline] |
Definition at line 63 of file REROOT_StdHep.h.
References m_VHEP.
Referenced by make_std_hep_list(), and MINFast::ProcessEvent().
00063 {return m_VHEP[3]; }
| Float_t REROOT_StdHep::Xmm | ( | ) | const [inline] |
Definition at line 60 of file REROOT_StdHep.h.
References m_VHEP.
Referenced by UberDST::Ana(), make_std_hep_list(), and MINFast::ProcessEvent().
00060 {return m_VHEP[0]; }
| Float_t REROOT_StdHep::Ymm | ( | ) | const [inline] |
Definition at line 61 of file REROOT_StdHep.h.
References m_VHEP.
Referenced by UberDST::Ana(), make_std_hep_list(), and MINFast::ProcessEvent().
00061 {return m_VHEP[1]; }
| Float_t REROOT_StdHep::Zmm | ( | ) | const |
Definition at line 105 of file REROOT_StdHep.cxx.
References fg_LimitZOffset, m_IstHEP, m_VHEP, and zoffset_REROOT().
Referenced by UberDST::Ana(), make_std_hep_list(), and MINFast::ProcessEvent().
00106 { 00107 // fg_LimitZOffset controls whether to add zoffset_REROOT 00108 // -1 : always add zoffset [ previous behaviour ] 00109 // 0 : never add zoffset 00110 // 1 : add only to entries with IstHEP = 0,1 or >200 00111 // 2 : add only to entries with r_vtx > 1mm (ie. offset those not close to 0) 00112 // 3 : add to entries satisfying 1 || 2 [default] 00113 // 4 : add only to entries satisfying 1 && 2 00114 00115 const Float_t r_mx = 1.0; // in mm! 00116 const Float_t r2mx = r_mx*r_mx; 00117 bool status01 = m_IstHEP==0 || m_IstHEP==1 || m_IstHEP>200 ; 00118 Float_t r2 = m_VHEP[0]*m_VHEP[0] + 00119 m_VHEP[1]*m_VHEP[1] + 00120 m_VHEP[2]*m_VHEP[2]; 00121 bool awayfrom0 = ( r2 > r2mx ); 00122 00123 bool do_add = true; 00124 switch ( fg_LimitZOffset ) { 00125 case -1: do_add = true; break; 00126 case 0: do_add = false; break; 00127 case 1: do_add = status01; break; 00128 case 2: do_add = awayfrom0; break; 00129 case 3: do_add = ( status01 || awayfrom0 ); break; 00130 case 4: do_add = ( status01 && awayfrom0 ); break; 00131 default: do_add = true; break; 00132 } 00133 00134 //rwh: zoffset_REROOT() returns "cm" 00135 // this is the difference between GMINOS z=0 (front of the hall) 00136 // and the chosen offline z=0 (just up front of first plane) 00137 if ( do_add ) return m_VHEP[2] + 10.*zoffset_REROOT(); 00138 return m_VHEP[2]; 00139 00140 }
Int_t REROOT_StdHep::fg_LimitZOffset = 3 [static, private] |
Definition at line 31 of file REROOT_StdHep.h.
Referenced by GetLimitZOffset(), SetLimitZOffset(), and Zmm().
Int_t REROOT_StdHep::m_ID [private] |
Int_t REROOT_StdHep::m_IdHEP [private] |
Int_t REROOT_StdHep::m_IstHEP [private] |
Int_t REROOT_StdHep::m_JdaHEP[2] [private] |
Int_t REROOT_StdHep::m_JmoHEP[2] [private] |
Float_t REROOT_StdHep::m_PHEP[5] [private] |
Float_t REROOT_StdHep::m_VHEP[4] [private] |
1.4.7