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::unique_ptr<EcalTrigPrimDigiCollection>
71 std::unique_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 ==
"1-32"))
106 while (junk !=
"LUTOut");
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)
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
edm::SortedCollection< HcalTriggerPrimitiveDigi > HcalTrigPrimDigiCollection
~RctInputTextToDigi() override
short calcIEta(unsigned short iCrate, unsigned short iCard, unsigned short iTower) const
#define DEFINE_FWK_MODULE(type)
void setSample(int i, const EcalTriggerPrimitiveSample &sam)
Abs< T >::type abs(const T &t)
void produce(edm::Event &, const edm::EventSetup &) override
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)
T const * product() const