00001 00002 // 00003 // CLASS AlGamp: 00004 // Concrete class for Gampec Objects, inherits from QvecBase 00005 // 00006 // Author : G. Bagliesi 00007 // modified by C. Delaere: now derive from QvecLink 00008 // fixed assignement operator 00009 // C. Delaere: now access full PGAC info 00010 // 00012 00013 00014 #ifndef _ALGAMP_H_ 00015 #define _ALGAMP_H_ 00016 00017 #include "QvecLink.h" 00018 00020 class AlGamp: public QvecLink { 00021 00022 public: 00023 00025 AlGamp(); 00026 00028 AlGamp(const AlGamp&); 00029 00031 ALEPHTYPE TYPE() const {return GAMPEC;} 00032 00034 void SetFake(AlGamp*); 00035 00036 // select the information used for the Q routines 00038 void UseCorrectedA4V(); 00040 void UseStandardA4V(); 00042 void UseRawA4V(); 00043 00044 // return the Lorentz vector 00046 HepLorentzVector GetCorrectedA4V() const; 00048 HepLorentzVector GetStandardA4V() const; 00050 HepLorentzVector GetRawA4V() const; 00051 00052 // standard quality factors 00054 float EnergyFractionInStack(const int) const; 00056 float EnergyFractionInCentralTowers() const; 00058 float Isolation() const; 00060 int StoreyFlag() const; 00062 int QualityFlag() const; 00063 00064 // advanced quality factors 00066 float QualityEstimator(const int) const; 00068 float Moment(const int) const; 00070 float Pi0Mass() const; 00072 float ExpectedEnergyFractionInCentralTowers() const; 00074 float GeometricalCorrection() const; 00076 float ZeroSupression() const; 00078 float FakeEcalProbability() const; 00080 float FakeHcalProbability() const; 00082 AlGamp* ParentGivingFake() const; 00084 int FakeEquality() const; 00086 int PecoObject() const; 00087 00088 private: 00089 00090 AlGamp* fake; 00091 00092 }; 00093 00094 #endif