23 bool forceToKeepFRdata)
24 :
DCCEventBlock(u,
m, hU, srpU, tccU, feU, memU, forceToKeepFRdata) {
50 edm::LogWarning(
"IncorrectEvent") <<
"\n For event L1A: " <<
l1_ <<
"\n Expected FED id is: " << expFedId
51 <<
" while current FED id is: " <<
fedId_ 52 <<
"\n => Skipping to next fed block...";
64 <<
"\n => Skipping to next fed block...";
75 <<
"\n => Skipping to next fed block...";
93 <<
" bytes while " << (
blockLength_ * 8) <<
" are set in the event header " 94 <<
"\n => Skipping to next fed block...";
136 for (
int dw = 0; dw < 5; dw++) {
138 for (
int i = 0;
i < 14;
i++, channel++) {
139 unsigned int shift =
i * 4;
148 std::vector<short>::iterator
it;
170 unsigned int numbChannels(0);
179 <<
"\n Event has an unsupported trigger type " <<
triggerType_ 180 <<
"\n => Skipping to next fed block...";
194 unsigned int next_tower_id = 1000;
196 unsigned int next_dwToEnd =
dwToEnd_;
199 for (
unsigned int chNumber = 1; chNumber <= numbChannels && STATUS !=
STOP_EVENT_UNPACKING; chNumber++,
it++) {
202 const short chStatus(*
it);
220 const bool ttProblem = (
val == 13) || (
val == 14);
223 <<
"Bad channel status: " << chStatus <<
" in the DCC channel: " << chNumber <<
" (LV1 " <<
l1_ 224 <<
" fed " <<
fedId_ <<
")\n" 225 <<
" => DCC channel is not being unpacked";
233 const unsigned int prev_dwToEnd =
dwToEnd_;
236 if (chNumber >= next_tower_id) {
239 next_tower_id = 1000;
246 const bool applyZS = (
fov_ == 0) ||
296 std::vector<short>::iterator
it;
297 unsigned int tccChId(0);
DCCEEEventBlock(DCCDataUnpacker *u, EcalElectronicsMapper *m, bool hU, bool srpU, bool tccU, bool feU, bool memU, bool forceToKeepFRdata)
int unpack(const uint64_t **data, unsigned int *dwToEnd, short tccChId=0)
int unpack(const uint64_t **data, unsigned int *dwToEnd, bool zs, unsigned int expectedTowerID)
int unpackTCCBlocks() override
Log< level::Error, false > LogError
unsigned int detailedTriggerType_
unsigned int blockLength_
unsigned int triggerType_
uint16_t getCCUValue(const int fed, const int ccu) const
DCCDataUnpacker * unpacker_
static std::atomic< bool > silentMode_
unsigned short srFlag(unsigned int feChannel)
unsigned int orbitCounter_
std::vector< short > feChStatus_
unsigned long long uint64_t
void unpack(const uint64_t *buffer, size_t bufferSize, unsigned int expFedId) override
int unpack(const uint64_t **data, unsigned int *dwToEnd, unsigned int numbFlags=SRP_NUMBFLAGS)
static unsigned int const shift
void addHeaderToCollection()
unsigned int next_tower_search(const unsigned int current_tower_id)
Log< level::Warning, false > LogWarning
std::vector< short > tccChStatus_
int unpack(const uint64_t **data, unsigned int *dwToEnd, unsigned int expectedTowerID)