00001 // Dear emacs, this is -*- c++ -*- 00002 // $Id: EmTauRoI_v1.h 631149 2014-11-26 12:26:18Z krasznaa $ 00003 #ifndef XAODTRIGGER_VERSIONS_EMTAUROI_V1_H 00004 #define XAODTRIGGER_VERSIONS_EMTAUROI_V1_H 00005 00006 // System include(s): 00007 extern "C" { 00008 # include <stdint.h> 00009 } 00010 #include <vector> 00011 #include <string> 00012 00013 // xAOD include(s): 00014 #include "AthContainers/AuxElement.h" 00015 00016 namespace xAOD { 00017 00030 class EmTauRoI_v1 : public SG::AuxElement { 00031 00032 public: 00034 EmTauRoI_v1(); 00035 00037 void initialize( uint32_t roiword, float eta, float phi ); 00038 00040 enum RoIType { 00041 CPRoIWord = 0, 00042 EMRoIWord = 1, 00043 TauRoIWord = 2 00044 }; 00046 RoIType roiType() const; 00047 00049 float eta() const; 00051 void setEta( float v ); 00052 00054 float phi() const; 00056 void setPhi( float v ); 00057 00059 uint32_t roiWord() const; 00061 void setRoIWord( uint32_t value ); 00062 00064 uint32_t thrPattern() const; 00065 00068 00070 float core() const; 00072 void setCore( float value ); 00073 00075 float emClus() const; 00077 void setEmClus( float value ); 00078 00080 float tauClus() const; 00082 void setTauClus( float value ); 00083 00085 float emIsol() const; 00087 void setEmIsol( float value ); 00088 00090 float hadIsol() const; 00092 void setHadIsol( float value ); 00093 00096 float hadCore() const; 00098 void setHadCore( float value ); 00099 00101 00104 00106 void addThreshold( const std::string& name, float value ); 00108 void clearThresholds(); 00109 00111 const std::vector< std::string >& thrNames() const; 00113 const std::vector< float >& thrValues() const; 00114 00116 00117 }; // class EmTauRoI_v1 00118 00119 } // namespace xAOD 00120 00121 // Declare the inheritance of the type: 00122 #include "xAODCore/BaseInfo.h" 00123 SG_BASE( xAOD::EmTauRoI_v1, SG::AuxElement ); 00124 00125 #endif // XAODTRIGGER_VERSIONS_EMTAUROI_V1_H