00001 // Dear emacs, this is -*- c++ -*- 00002 // $Id: JetElement_v1.h 631127 2014-11-26 09:54:48Z gwatts $ 00003 #ifndef XAODTRIGL1CALO_VERSIONS_JETELEMENT_V1_H 00004 #define XAODTRIGL1CALO_VERSIONS_JETELEMENT_V1_H 00005 00006 #include "AthLinks/ElementLink.h" 00007 #include "AthContainers/AuxElement.h" 00008 00009 namespace xAOD { 00010 00017 00018 class JetElement_v1 : public SG::AuxElement{ 00019 public: 00020 // Default constructor 00021 JetElement_v1(); 00022 00024 float phi() const; 00026 void setPhi(float); 00027 00029 float eta() const; 00031 void setEta(float); 00032 00034 unsigned int key() const; 00036 void setKey(unsigned int); 00037 00039 int peak() const; 00041 void setPeak(int); 00042 00044 const std::vector<int>& emEnergyVec() const; 00046 void setEmEnergyVec(const std::vector<int>&); 00047 00049 const std::vector<int>& hadEnergyVec() const; 00051 void setHadEnergyVec(const std::vector<int>&); 00052 00054 const std::vector<int>& emErrorVec() const; 00056 void setEmErrorVec(const std::vector<int>&); 00057 00059 const std::vector<int>& hadErrorVec() const; 00061 void setHadErrorVec(const std::vector<int>&); 00062 00064 const std::vector<int>& linkErrorVec() const; 00066 void setLinkErrorVec(const std::vector<int>&); 00067 00069 void addEnergy(int emEnergy, int hadEnergy); 00071 void addSlice(int slice, int emEnergy, int hadEnergy,int emError, int hadError, int linkError); 00072 00074 int emEnergy() const; 00076 int hadEnergy() const; 00078 int energy() const; 00079 00081 int emSliceEnergy(int slice) const; 00083 int hadSliceEnergy(int slice) const; 00085 int sliceEnergy(int slice) const; 00086 00088 bool isSaturated() const; 00090 bool isEmSaturated() const; 00092 bool isHadSaturated() const; 00093 00095 int emError() const; 00097 int hadError() const; 00099 int linkError() const; 00100 00101 private: 00102 static const int m_saturationThreshold = 1023; 00103 static const int m_layerSaturationThreshold = 511; 00104 }; 00105 } // namespace xAOD 00106 00107 #endif // XAODTRIGL1CALO_VERSIONS_JETELEMENT_V1_H