00001 00002 // NtpSRMomentum 00003 // 00004 // NtpSRMomentum is an ntuple storing momentum data 00005 // 00006 // Based on Roy Lee's CandEventSR/MomentumInfoSR class. 00008 00009 #ifndef NTPSRMOMENTUM_H 00010 #define NTPSRMOMENTUM_H 00011 00012 #include "TObject.h" 00013 00014 class NtpSRMomentum; 00015 std::ostream& operator << (std::ostream& os, const NtpSRMomentum& ntp); 00016 00017 class NtpSRMomentum : public TObject { 00018 00019 public: 00020 00021 NtpSRMomentum() : range(0),qp(0),eqp(0), best(0), qp_rangebiased(0), eqp_rangebiased(0) {} 00022 virtual ~NtpSRMomentum() {} 00023 00024 // State testing methods 00025 virtual std::ostream& Print(std::ostream& os) const; 00026 virtual void Print(Option_t* option = "") const; 00027 00028 public: 00029 // Ntuple is treated like a C-struct with public data members and 00030 // rule-breaking field data members not prefaced by "f" and all 00031 // lowercase, by popular demand. 00032 00033 Float_t range; // momentum (GeV/c) of track from range (same for stop as not) 00034 // variable qp is q/p where q is charge in electron charge units (e.g. +/- 1 00035 // for most particles) and p is momentum in GeV/c as measured from curvature 00036 // in magnetic field 00037 Float_t qp; // q/p (1/(GeV/c)) as described above 00038 Float_t eqp; // uncertainty from qp fit 00039 Float_t best; // range-based if contained, curvature if not 00040 Float_t qp_rangebiased; 00041 Float_t eqp_rangebiased; 00042 ClassDef(NtpSRMomentum,5) 00043 }; 00044 00045 00046 #endif // NTPSRMOMENTUM_H
1.3.9.1