9 #include "CLHEP/Units/SystemOfUnits.h"
20 declareInterface<IDataRetriever>(
this);
34 return StatusCode::SUCCESS;
38 int numTrigTowers = TTVector->
size();
44 DataVect emEnergyVec; emEnergyVec.reserve(numTrigTowers);
45 DataVect hadEnergyVec; hadEnergyVec.reserve(numTrigTowers);
47 DataVect sumEnergyVec; sumEnergyVec.reserve(numTrigTowers);
48 DataVect numADCVec; numADCVec.reserve(numTrigTowers);
49 DataVect emBCIDVec; emBCIDVec.reserve(numTrigTowers);
50 DataVect hadBCIDVec; hadBCIDVec.reserve(numTrigTowers);
51 DataVect isEMSaturated; isEMSaturated.reserve(numTrigTowers);
52 DataVect isHadSaturated; isHadSaturated.reserve(numTrigTowers);
53 DataVect emADCVec; emADCVec.reserve(numTrigTowers);
54 DataVect hadADCVec; hadADCVec.reserve(numTrigTowers);
58 for ( trigTowerIter = TTVector->
begin(); trigTowerIter < TTVector->
end(); ++trigTowerIter ){
61 if ( (*trigTowerIter)->cpET() == 0 )
continue;
77 const int layer = (*trigTowerIter)->layer();
78 const int cpET = (*trigTowerIter)->cpET();
79 const int peakEnergy = (*trigTowerIter)->adc()[(*trigTowerIter)->adcPeak()];
80 const int jepET = (*trigTowerIter)->jepET();
84 emEnergy = peakEnergy;
87 hadEnergy = peakEnergy;
91 <<
" at layer: " <<
layer <<
", with"
92 <<
" eta:"<<(*trigTowerIter)->eta() <<
", phi:"<<(*trigTowerIter)->phi()
93 <<
", em energy:"<< emEnergy <<
", had energy:"<< hadEnergy
94 <<
", cpET:" << cpET <<
", jepET:"<< jepET <<
endmsg;
100 sumEnergy = emEnergy+hadEnergy;
102 emEnergyVec.push_back( emEnergy );
103 hadEnergyVec.push_back( hadEnergy );
104 sumEnergyVec.push_back( sumEnergy );
107 isEMSaturated.push_back(
DataType( ((*trigTowerIter)->isCpSaturated())? 1 : 0 ));
108 isHadSaturated.push_back(
DataType( ((*trigTowerIter)->isJepSaturated())? 1 : 0 ));
110 emADCVec.push_back( 0. );
111 hadADCVec.push_back( 0. );
112 numADCVec.push_back( 0. );
113 emBCIDVec.push_back( 0. );
114 hadBCIDVec.push_back( 0. );
119 myDataMap[
"phi"] =
phi;
120 myDataMap[
"eta"] =
eta;
121 myDataMap[
"emEnergy"] = emEnergyVec;
122 myDataMap[
"hadEnergy"] = hadEnergyVec;
123 myDataMap[
"sumEnergy"] = sumEnergyVec;
125 myDataMap[
"emADC"] = emADCVec;
126 myDataMap[
"hadADC"] = hadADCVec;
127 myDataMap[
"numADC"] = numADCVec;
128 myDataMap[
"emBCID"] = emBCIDVec;
129 myDataMap[
"hadBCID"] = hadBCIDVec;
130 myDataMap[
"isEMSaturated"] = isEMSaturated;
131 myDataMap[
"isHadSaturated"] = isHadSaturated;