8 inputFile_(iConfig.getParameter<edm::
FileInPath>(
"inputFile")),
9 inputStream_(inputFile_.
fullPath().c_str()),
22 produces<EcalTrigPrimDigiCollection>();
23 produces<HcalTrigPrimDigiCollection>();
30 std::cerr <<
"Input file didn't open!!" << std::endl;
69 std::auto_ptr<EcalTrigPrimDigiCollection>
71 std::auto_ptr<HcalTrigPrimDigiCollection>
73 ecalTPs->reserve(56*72);
74 hcalTPs->reserve(56*72+18*8);
75 const int nEcalSamples = 1;
76 const int nHcalSamples = 1;
88 unsigned short junk_counter = 0;
100 if((junk_counter == 11) && (junk.compare(
"1-32") == 0))
106 while (junk.compare(
"LUTOut") != 0);
107 std::cout <<
"Skipped file header" << std::endl;
109 else {
std::cout <<
"oldVersion_ FALSE (tower 0-31)" << std::endl;}
114 for (
int i = 0;
i < 72;
i++)
117 for (
int j = 0;
j < 56;
j++)
123 unsigned short crate;
125 unsigned short tower;
129 inputStream_ >> std::hex >> fileEventNumber >> crate >> card
131 >> eAddr >> hAddr >> junk >> std::dec;
137 int encodedEtEcal = (int) (eAddr>>1);
138 bool fineGrainEcal = (bool) (eAddr&1);
139 int encodedEtHcal = (int) (hAddr>>1);
140 bool fineGrainHcal = (bool) (hAddr&1);
150 iPhi = ((72 + 18 - iPhi) % 72);
151 if (iPhi == 0) {iPhi = 72;}
152 unsigned absIeta =
abs(iEta);
153 int zSide = (iEta/absIeta);
166 ecalDigi.
setSize(nEcalSamples);
173 ecalTPs->push_back(ecalDigi);
178 hcalDigi.
setSize(nHcalSamples);
185 hcalTPs->push_back(hcalDigi);
190 for (
int i = 0;
i < 18;
i++)
192 for (
int j = 0;
j < 8;
j++)
195 int hfIEta = (
j%4)+29;
198 hfIEta = hfIEta*(-1);
202 int hfIPhi = (
i%9)*8 + (
j/4)*4 + 1;
208 hcalTPs->push_back(hfDigi);
void setSample(int i, const HcalTriggerPrimitiveSample &sam)
edm::SortedCollection< HcalTriggerPrimitiveDigi > HcalTrigPrimDigiCollection
short calcIEta(unsigned short iCrate, unsigned short iCard, unsigned short iTower) const
#define DEFINE_FWK_MODULE(type)
virtual void produce(edm::Event &, const edm::EventSetup &)
void setSample(int i, const EcalTriggerPrimitiveSample &sam)
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
Abs< T >::type abs(const T &t)
unsigned short calcIPhi(unsigned short iCrate, unsigned short iCard, unsigned short iTower) const
RctInputTextToDigi(const edm::ParameterSet &)
edm::SortedCollection< EcalTriggerPrimitiveDigi > EcalTrigPrimDigiCollection
L1RCTLookupTables * lookupTables_
std::ifstream inputStream_
const L1RCTParameters * rctParameters() const
void setRCTParameters(const L1RCTParameters *rctParameters)
volatile std::atomic< bool > shutdown_flag false