#ifndef __INCLUDE_TCALOJET_H #define __INCLUDE_TCALOJET_H #include "seed/TJet.h" class TString; namespace seed { /* Represents a generic jet with calorimeter information. Thus it is a jet object, but defines additionally the electromagnetic fraction of the jet's energy deposit etc. */ class TCaloJet:public TJet { public: TCaloJet(const TLorentzVector & lv = TLorentzVector(0., 0., 0., 0.), const Double_t dWidthEta = 0., const Double_t dWidthPhi = 0., const Double_t dEMF = 0., const Int_t iN90 = 0); TCaloJet(const TJet & jet, const Double_t dEMF = 0., const Int_t iN90 = 0):TJet(jet), fDEMF(dEMF), fIN90(iN90) { }; virtual ~ TCaloJet() { }; TCaloJet & Set(const TLorentzVector & lv, const Double_t dWidthEta, const Double_t dWidthPhi, const Double_t dEMF, const Int_t iN90); // sets the electromagnetic fraction of the jet's energy deposit in the calorimeter TCaloJet & SetEMF(const Double_t dEMF) { fDEMF = dEMF; return *this; } // sets the number of calorimeter cells containing 90% of the jet's energy TCaloJet & SetN90(const Int_t iN90) { fIN90 = iN90; return *this; } // returns the electromagnetic fraction of the jet's energy deposit in the calorimeter Double_t GetEMF() const { return fDEMF; } // returns the number of calorimeter cells containing 90% of the jet's energy Int_t GetN90() const { return fIN90; } protected: Double_t fDEMF; // electromagnetic fraction of the jet's energy deposit in the calorimeter Int_t fIN90; // number of calorimeter cells containing 90% of the jet's energy ClassDef(TCaloJet, 1) // Generic jet with calorimeter info. }; } // namespace seed #endif