65 short zside = ecal_it->id().zside();
66 unsigned short ietaAbs = ecal_it->id().ietaAbs();
67 short iphi = ecal_it->id().iphi();
68 unsigned short digiSize = ecal_it->size();
69 unsigned short nSOI = (
unsigned short)(ecal_it->sampleOfInterest());
70 if (digiSize < nSamples || nSOI <
preSamples || ((
int)(digiSize - nSOI) < (
int)(nSamples -
preSamples))) {
71 unsigned short preLoopsZero = (
unsigned short)(
preSamples)-nSOI;
80 ecalColl[
sample].push_back(ecalDigi);
91 edm::LogWarning(
"TooLittleData") <<
"ECAL data needs at least one presample " 92 <<
"more than the number requested " 93 <<
"to use ecal cosmic timing mod! " 94 <<
"reverting to useEcalCosmicTiming = false " 95 <<
"for rest of job.";
106 ecalColl[
sample].push_back(ecalDigi);
116 ecalColl[
sample].push_back(ecalDigi);
121 short zside = ecal_it->id().zside();
122 unsigned short ietaAbs = ecal_it->id().ietaAbs();
123 short iphi = ecal_it->id().iphi();
130 edm::LogWarning(
"TooLittleData") <<
"ECAL data needs at least one presample " 131 <<
"more than the number requested " 132 <<
"to use ecal cosmic timing mod! " 133 <<
"reverting to useEcalCosmicTiming = false " 134 <<
"for rest of job.";
137 ecalDigi.setSample(0,
139 ecal_it->sample(ecal_it->sampleOfInterest() +
sample -
preSamples - 1).raw()));
149 ecalColl[
sample].push_back(ecalDigi);
159 short ieta = hcal_it->id().ieta();
160 short iphi = hcal_it->id().iphi();
162 unsigned short digiSize = hcal_it->size();
164 unsigned short nSOI = (
unsigned short)(hcal_it->presamples());
165 if (digiSize < nSamples || nSOI <
preSamples || ((
int)(digiSize - nSOI) < (
int)(nSamples -
preSamples))) {
166 unsigned short preLoopsZero = (
unsigned short)(
preSamples)-nSOI;
172 hcalDigi.setPresamples(0);
174 hcalColl[
sample].push_back(hcalDigi);
182 hcalDigi.setPresamples(0);
186 edm::LogWarning(
"TooLittleData") <<
"HCAL data needs at least one presample " 187 <<
"more than the number requested " 188 <<
"to use hcal cosmic timing mod! " 189 <<
"reverting to useHcalCosmicTiming = false " 190 <<
"for rest of job.";
203 hcalColl[
sample].push_back(hcalDigi);
211 hcalDigi.setPresamples(0);
213 hcalColl[
sample].push_back(hcalDigi);
220 hcalDigi.setPresamples(0);
224 edm::LogWarning(
"TooLittleData") <<
"HCAL data needs at least one presample " 225 <<
"more than the number requested " 226 <<
"to use hcal cosmic timing mod! " 227 <<
"reverting to useHcalCosmicTiming = false " 228 <<
"for rest of job.";
238 if (ieta > -29 && ieta < 29)
239 hcalDigi.setSample(0,
242 if (ieta <= -29 || ieta >= 29)
243 hcalDigi.setSample(0,
247 hcalColl[
sample].push_back(hcalDigi);
256 char ecal_label[200];
257 char hcal_label[200];
259 sprintf(ecal_label,
"ECALBxminus%d", preSamples -
i);
260 sprintf(hcal_label,
"HCALBxminus%d", preSamples -
i);
264 for (
unsigned int j = 0;
j < ecalColl[
i].size(); ++
j) {
265 ecalIn->push_back((ecalColl[
i])[
j]);
267 for (
unsigned int j = 0;
j < hcalColl[
i].size(); ++
j)
268 hcalIn->push_back((hcalColl[
i])[
j]);
276 for (
unsigned int j = 0; j < ecalColl[
preSamples].size(); ++
j)
277 ecal0->push_back((ecalColl[preSamples])[j]);
278 for (
unsigned int j = 0; j < hcalColl[
preSamples].size(); ++
j)
279 hcal0->push_back((hcalColl[preSamples])[j]);
284 for (
int i = preSamples + 1; i < preSamples + postSamples + 1; ++
i) {
285 char ecal_label[200];
286 char hcal_label[200];
288 sprintf(ecal_label,
"ECALBxplus%d", i - preSamples);
289 sprintf(hcal_label,
"HCALBxplus%d", i - preSamples);
294 for (
unsigned int j = 0; j < ecalColl[
i].size(); ++
j)
295 ecalIn2->push_back((ecalColl[i])[j]);
297 for (
unsigned int j = 0; j < hcalColl[
i].size(); ++
j)
298 hcalIn2->push_back((hcalColl[i])[j]);
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
std::vector< T >::const_iterator const_iterator
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
const_iterator end() const
const_iterator begin() const