REROOT_StdHep Class Reference

#include <REROOT_StdHep.h>

List of all members.

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


Detailed Description

Definition at line 17 of file REROOT_StdHep.h.


Constructor & Destructor Documentation

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 (  ) 

Definition at line 84 of file REROOT_StdHep.cxx.

00085 {
00086 }

REROOT_StdHep::~REROOT_StdHep (  ) 

Definition at line 92 of file REROOT_StdHep.cxx.

00093 {
00094 }


Member Function Documentation

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 (  ) 

Definition at line 96 of file REROOT_StdHep.cxx.

00097 {
00098 }

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]

Definition at line 88 of file REROOT_StdHep.cxx.

00089 {
00090 }

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

Definition at line 100 of file REROOT_StdHep.cxx.

00101 {
00102   pstream << "======================= StdHep =====================\n";
00103 }

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 }


Member Data Documentation

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]

Definition at line 20 of file REROOT_StdHep.h.

Referenced by ID().

Int_t REROOT_StdHep::m_IdHEP [private]

Definition at line 22 of file REROOT_StdHep.h.

Referenced by IdHEP().

Int_t REROOT_StdHep::m_IstHEP [private]

Definition at line 21 of file REROOT_StdHep.h.

Referenced by IstHEP(), and Zmm().

Int_t REROOT_StdHep::m_JdaHEP[2] [private]

Definition at line 24 of file REROOT_StdHep.h.

Referenced by FirstChild(), and LastChild().

Int_t REROOT_StdHep::m_JmoHEP[2] [private]

Definition at line 23 of file REROOT_StdHep.h.

Referenced by FirstParent(), and LastParent().

Float_t REROOT_StdHep::m_PHEP[5] [private]

Definition at line 25 of file REROOT_StdHep.h.

Referenced by E(), Mass(), Px(), Py(), and Pz().

Float_t REROOT_StdHep::m_VHEP[4] [private]

Definition at line 26 of file REROOT_StdHep.h.

Referenced by Tprod(), Xmm(), Ymm(), and Zmm().


The documentation for this class was generated from the following files:
Generated on Wed Sep 10 22:52:04 2014 for loon by  doxygen 1.4.7