00001 // Dear emacs, this is -*- c++ -*- 00002 // $Id: EnergySumRoI_v1.h 631149 2014-11-26 12:26:18Z krasznaa $ 00003 #ifndef XAODTRIGGER_VERSIONS_ENERGYSUMROI_V1_H 00004 #define XAODTRIGGER_VERSIONS_ENERGYSUMROI_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 EnergySumRoI_v1 : public SG::AuxElement { 00031 00032 public: 00034 EnergySumRoI_v1(); 00035 00037 void initialize( uint32_t roiword0, uint32_t roiword1, uint32_t roiword2, 00038 float energyX, float energyY, float energyT ); 00039 00042 00044 uint32_t roiWord0() const; 00046 void setRoIWord0( uint32_t value ); 00047 00049 uint32_t roiWord1() const; 00051 void setRoIWord1( uint32_t value ); 00052 00054 uint32_t roiWord2() const; 00056 void setRoIWord2( uint32_t value ); 00057 00059 00062 00064 uint32_t thrPatSumET() const; 00066 uint32_t thrPatMET() const; 00069 uint32_t thrPatMETSig() const; 00070 00072 00075 00077 bool overflowX() const; 00079 bool overflowY() const; 00081 bool overflowT() const; 00082 00084 00087 00089 void addThreshold( const std::string& name ); 00091 void clearThresholds(); 00092 00094 const std::vector< std::string >& thrNames() const; 00095 00097 00100 00102 float energyX() const; 00104 void setEnergyX( float value ); 00106 float exMiss() const { return -energyX(); } 00107 00109 float energyY() const; 00111 void setEnergyY( float value ); 00113 float eyMiss() const { return -energyY(); } 00114 00116 float energyT() const; 00118 void setEnergyT( float value ); 00119 00121 00122 }; // class EnergySumRoI_v1 00123 00124 } // namespace xAOD 00125 00126 // Declare the inheritace of the class: 00127 #include "xAODCore/BaseInfo.h" 00128 SG_BASE( xAOD::EnergySumRoI_v1, SG::AuxElement ); 00129 00130 #endif // XAODTRIGGER_VERSIONS_ENERGYSUMROI_V1_H