38 if (ByLumiResetSwitch) {
50 if (gtFED.size() >
sizeof(
uint64_t)) {
51 const uint32_t* halfHeader =
reinterpret_cast<const uint32_t*
>(gtFED.data());
52 l1A_ = *(halfHeader + 1) & 0xffffff;
55 for (
int iFED(601); iFED <= 654; iFED++) {
57 unsigned length(fedData.size() /
sizeof(
uint64_t));
59 const uint64_t* pData(reinterpret_cast<uint64_t const*>(fedData.data()));
60 if ((pData[length - 1] & 0x4) != 0)
81 MESet& meFEStatusErrMapByLumi(
MEs_.
at(
"FEStatusErrMapByLumi"));
91 MESet& meEventTypePreCalib(
MEs_.
at(
"EventTypePreCalib"));
93 MESet& meEventTypePostCalib(
MEs_.
at(
"EventTypePostCalib"));
97 map<int, int> l1aCounts;
99 l1aCounts[dcchItr->getLV1()]++;
102 for (map<int, int>::iterator l1aItr(l1aCounts.begin()); l1aItr != l1aCounts.end(); ++l1aItr) {
103 if (l1aItr->second > maxVote) {
104 maxVote = l1aItr->second;
105 l1A_ = l1aItr->first;
111 int dccId(dcchItr->id());
113 int dccL1A(dcchItr->getLV1());
114 short dccL1AShort(dccL1A & 0xfff);
115 int dccBX(dcchItr->getBX());
122 if (dcchItr->getRunNumber() != int(
runNumber_))
124 if (dcchItr->getOrbit() !=
orbit_)
133 const vector<short>& feStatus(dcchItr->getFEStatus());
134 const vector<short>& feBxs(dcchItr->getFEBxs());
135 const vector<short>& feL1s(dcchItr->getFELv1());
138 double statusError(0.);
140 for (
unsigned iFE(0); iFE < feStatus.size(); iFE++) {
144 short status(feStatus[iFE]);
146 if (feBxs[iFE] != -1 && dccBX != -1) {
149 if (feBxs[iFE] == -1)
153 if (feBxs[iFE] != dccBX && feBxs[iFE] != -1 && dccBX != -1) {
160 if (feL1s[iFE] +
feL1Offset_ != dccL1AShort && feL1s[iFE] != -1 && dccL1AShort != 0) {
173 else if (iFE + 1 == 70)
208 if (statusError > 0.)
211 const vector<short>& tccBx(dcchItr->getTCCBx());
212 const vector<short>& tccL1(dcchItr->getTCCLv1());
214 if (tccBx.size() == 4) {
215 if (dccId <= kEEmHigh + 1 || dccId >=
kEEpLow + 1) {
216 for (
int iTCC(0); iTCC < 4; iTCC++) {
217 if (tccBx[iTCC] != dccBX && tccBx[iTCC] != -1 && dccBX != -1)
220 if (tccL1[iTCC] != dccL1AShort && tccL1[iTCC] != -1 && dccL1AShort != 0)
224 if (tccBx[0] != dccBX && tccBx[0] != -1 && dccBX != -1)
227 if (tccL1[0] != dccL1AShort && tccL1[0] != -1 && dccL1AShort != 0)
232 short srpBx(dcchItr->getSRPBx());
233 short srpL1(dcchItr->getSRPLv1());
235 if (srpBx != dccBX && srpBx != -1 && dccBX != -1)
238 if (srpL1 != dccL1AShort && srpL1 != -1 && dccL1AShort != 0)
241 const int calibBX(3490);
243 short runType(dcchItr->getRunType() + 1);
244 if (runType < 0 || runType > 22)
248 else if (dccBX == calibBX)
static const char runNumber_[]
#define DEFINE_ECALDQM_WORKER(TYPE)
uint16_t *__restrict__ id
edm::LuminosityBlockNumber_t iLumi
void runOnRawData(EcalRawDataCollection const &)
MESet & at(const std::string &key)
std::vector< T >::const_iterator const_iterator
int bunchCrossing() const
static const unsigned int numBX
void beginEvent(edm::Event const &, edm::EventSetup const &, bool const &, bool &) override
bool ccuExists(unsigned, unsigned)
void addDependencies(DependencySet &) override
const FEDRawData & FEDData(int fedid) const
retrieve data for fed
edm::RunNumber_t runNumber_
void beginRun(edm::Run const &, edm::EventSetup const &) override
unsigned dccId(DetId const &, EcalElectronicsMapping const *)
void runOnSource(FEDRawDataCollection const &)
const_iterator end() const
EcalDQMSetupObjects const getEcalDQMSetupObjects()
unsigned long long uint64_t
edm::EventAuxiliary::ExperimentType experimentType() const
EcalElectronicsMapping const * GetElectronicsMap()
virtual void reset(EcalElectronicsMapping const *, double=0., double=0., double=0.)
void push_back(Dependency const &_d)
const_iterator begin() const