Namespaces | |
MsgTools | |
Classes | |
struct | EventHeader |
class | EventMsgBuilder |
class | EventMsgView |
struct | FRDEventHeader_V1 |
struct | FRDEventHeader_V2 |
struct | FRDEventHeader_V3 |
struct | FRDEventHeader_V4 |
struct | FRDEventHeader_V5 |
struct | FRDEventHeader_V6 |
class | FRDEventMsgView |
struct | FRDFileHeader_v1 |
struct | FRDFileHeader_v2 |
struct | FRDFileHeaderContent_v1 |
struct | FRDFileHeaderContent_v2 |
struct | FRDFileHeaderIdentifier |
struct | Header |
class | HeaderView |
struct | InitHeader |
class | InitMsgBuilder |
class | InitMsgView |
class | OutputFile |
class | RootDebug |
struct | SerializeDataBuffer |
class | StreamerFileReader |
class | StreamerFileWriter |
class | StreamerInputFile |
class | StreamerInputModule |
class | StreamerInputSource |
class | StreamerOutputFile |
class | StreamerOutputModule |
class | StreamerOutputModuleBase |
class | StreamerOutputModuleCommon |
class | StreamerOutputMsgBuilders |
class | StreamSerializer |
struct | Version |
Typedefs | |
typedef unsigned char | char_uint16[sizeof(uint16)] |
typedef unsigned char | char_uint32[sizeof(uint32)] |
typedef unsigned char | char_uint64[sizeof(uint64)] |
typedef std::vector< std::string > | Strings |
typedef unsigned short | uint16 |
typedef unsigned int | uint32 |
typedef unsigned long long | uint64 |
typedef unsigned char | uint8 |
Enumerations | |
enum | StreamerCompressionAlgo { UNCOMPRESSED = 0, ZLIB = 1, LZMA = 2, ZSTD = 4 } |
Functions | |
void | convert (uint32 i, char_uint32 v) |
void | convert (uint16 i, char_uint16 v) |
void | convert (uint64 li, char_uint64 v) |
uint16 | convert16 (char_uint16 v) |
uint32 | convert32 (char_uint32 v) |
uint64 | convert64 (char_uint64 v) |
void | doBuildRealData (const std::string &name) |
void | dumpEvent (uint8 *buf) |
void | dumpEventHeader (const EventMsgView *eview) |
void | dumpEventIndex (const EventMsgView *eview) |
void | dumpEventView (const EventMsgView *eview) |
void | dumpFRDEventView (const FRDEventMsgView *fview) |
void | dumpInit (uint8 *buf) |
void | dumpInitHeader (const InitMsgView *view) |
void | dumpInitVerbose (const InitMsgView *view) |
void | dumpInitView (const InitMsgView *view) |
void | dumpStartMsg (const InitMsgView *view) |
uint16_t | getFRDFileHeaderVersion (const std::array< uint8_t, 4 > &id, const std::array< uint8_t, 4 > &version) |
TClass * | getTClass (const std::type_info &ti) |
bool | loadCap (const std::string &name, std::vector< std::string > &missingDictionaries) |
void | loadExtraClasses () |
void | printBits (unsigned char c) |
Variables | |
const uint16 | FRDEVENT_MASK_ISGENDATA = 1 |
constexpr std::array< unsigned char, 4 > | FRDFileHeader_id {{0x52, 0x41, 0x57, 0x5f}} |
constexpr std::array< unsigned char, 4 > | FRDFileVersion_1 {{0x30, 0x30, 0x30, 0x31}} |
constexpr std::array< unsigned char, 4 > | FRDFileVersion_2 {{0x30, 0x30, 0x30, 0x32}} |
constexpr size_t | FRDHeaderMaxVersion = 6 |
constexpr std::array< uint32, FRDHeaderMaxVersion+1 > | FRDHeaderVersionSize |
This module is an source module reading continously file as they are copied in the input directory. The processed file is moved to directoryt inprocessDir before being processed. Once it is processed it is moved to processedDir. To prevent processing files before their transfer is finished, it is waited than file size is stable during one second before the file is processed. This protection is obviously not full proof, especially to transfer lag.
File contains simple tools to dump Init and Event Messages on screen.
Event Message Represented here
Protocol Versions 1-4: code 1 | size 4 | run 4 | event 4 | lumi 4 | reserved 4 | l1_count 4| l1bits l1_count/8 | hlt_count 4| hltbits hlt_count/4 | eventdatalength 4 | eventdata blob {variable}
Protocol Version 5: code 1 | size 4 | protocol version 1 | run 4 | event 4 | lumi 4 | origDataSize 4 | outModId 4 | l1_count 4| l1bits l1_count/8 | hlt_count 4| hltbits hlt_count/4 | eventdatalength 4 | eventdata blob {variable}
Protocol Version 6: // no change here, only INIT msg change code 1 | size 4 | protocol version 1 | run 4 | event 4 | lumi 4 | origDataSize 4 | outModId 4 | l1_count 4| l1bits l1_count/8 | hlt_count 4| hltbits hlt_count/4 | eventdatalength 4 | eventdata blob {variable}
Protocol Version 7: // no change here, only data blob changes code 1 | size 4 | protocol version 1 | run 4 | event 4 | lumi 4 | origDataSize 4 | outModId 4 | l1_count 4| l1bits l1_count/8 | hlt_count 4| hltbits hlt_count/4 | eventdatalength 4 | eventdata blob {variable}
Protocol Version 8: // add in checksum of data blob changes code 1 | size 4 | protocol version 1 | run 4 | event 4 | lumi 4 | origDataSize 4 | outModId 4 | l1_count 4| l1bits l1_count/8 | hlt_count 4| hltbits hlt_count/4 | adler32_chksum 4 | host name length 1 | host name {Fixed size} eventdatalength 4 | eventdata blob {variable}
Protocol Version 9: // add dropped events counter code 1 | size 4 | protocol version 1 | run 4 | event 4 | lumi 4 | origDataSize 4 | outModId 4 | droppedEventsCount 4 | l1_count 4 | l1bits l1_count/8 | hlt_count 4 | hltbits hlt_count/4 | adler32_chksum 4 | host name length 1 | host name {Fixed size} eventdatalength 4 | eventdata blob {variable}
Protocol Version 10: identical to version 9, but incremented to keep in sync with init msg version
Protocol Version 11: identical to version 10, except event changed from 4 bytes to 8 bytes
This class is used to view the contents of "FED Raw Data" (FRD) events. Initially, the only time that such events are created is when an error occurs in the HLT. So, in the beginning, "error event" == "FRD event". However, if new ways of creating events of this type are added to the HLT, hopefully this class can be used or upgraded to handle those events as well.
08-Aug-2008 - KAB - Initial Implementation 06-Oct-2008 - KAB - Added version number and lumi block number (version #2) 14-Nov-2013 - RKM - Added event size, adler32 and padding size (version #3) 15-Oct-2014 - WDD - Event number from 32 bits to 64 bits (version #4) 01-Apr-2015 - SM - replaced adler32 with crc32c which is accelerated in SSE 4.2 (version #5) 22-Sep-2020 - SM - reused high version 16-bits for event info via flags (version #6)
Version 6 Format: uint16 - format version number uint16 - event flags uint32 - run number uint32 - lumi number uint32 - event number uint32 - event size uint32 - crc32c checksum of FED data (excluding event header) variable size - FED data
Version 5 Format: uint32 - format version number uint32 - run number uint32 - lumi number uint32 - event number uint32 - event size uint32 - crc32c checksum of FED data (excluding event header) variable size - FED data
Version 4 Format: uint32 - format version number uint32 - run number uint32 - lumi number uint32 - event number low 32 bits uint32 - event number high 32 bits uint32 - event size uint32 - padding size needed to fill memory page size (_SC_PAGE_SIZE) uint32 - adler32 checksum of FED data (excluding event header) variable size - FED data
Version 3 Format: uint32 - format version number uint32 - run number uint32 - lumi number uint32 - event number uint32 - event size uint32 - padding size needed to fill memory page size (_SC_PAGE_SIZE) uint32 - adler32 checksum of FED data (excluding event header) variable size - FED data
Version 2 Format: uint32 - format version number uint32 - run number uint32 - lumi number uint32 - event number 1024 * uint32 - size values for all 1024 FED buffers variable size - FED data
Init Message
Protocol Versoion 2: code 1 | size 4 | protocol version 1 | pset 16 | run 4 | Init Header Size 4| Event Header Seize 4| releaseTagLength 1 | ReleaseTag var| HLT count 4| HLT Trig Legth 4 | HLT Trig names var | L1 Trig Count 4| L1 TrigName len 4| L1 Trig Names var |desc legth 4 | description blob var
Protocol Version 3: code 1 | size 4 | protocol version 1 | pset 16 | run 4 | Init Header Size 4| Event Header Size 4| releaseTagLength 1 | ReleaseTag var| HLT count 4| HLT Trig Legth 4 | HLT Trig names var | L1 Trig Count 4| L1 TrigName len 4| L1 Trig Names var |desc legth 4 | description blob var
Protocol Version 4: code 1 | size 4 | protocol version 1 | pset 16 | run 4 | Init Header Size 4| Event Header Size 4| releaseTagLength 1 | ReleaseTag var| processNameLength 1 | processName var | HLT count 4| HLT Trig Legth 4 | HLT Trig names var | L1 Trig Count 4| L1 TrigName len 4| L1 Trig Names var |desc legth 4 | description blob var
Protocol Version 5: code 1 | size 4 | protocol version 1 | pset 16 | run 4 | Init Header Size 4| Event Header Size 4| releaseTagLength 1 | ReleaseTag var| processNameLength 1 | processName var| outputModuleLabelLength 1 | outputModuleLabel var | HLT Trig count 4| HLT Trig Length 4 | HLT Trig names var | HLT Selection count 4| HLT Selection Length 4 | HLT Selection names var | L1 Trig Count 4| L1 TrigName len 4| L1 Trig Names var |desc legth 4 | description blob var
Protocol Version 6: code 1 | size 4 | protocol version 1 | pset 16 | run 4 | Init Header Size 4| Event Header Size 4| releaseTagLength 1 | ReleaseTag var| processNameLength 1 | processName var| outputModuleLabelLength 1 | outputModuleLabel var | outputModuleId 4 | HLT Trig count 4| HLT Trig Length 4 | HLT Trig names var | HLT Selection count 4| HLT Selection Length 4 | HLT Selection names var | L1 Trig Count 4| L1 TrigName len 4| L1 Trig Names var |desc legth 4 | description blob var
Protocol Version 7: No change to protocol, only description blob (and event data blob) changed code 1 | size 4 | protocol version 1 | pset 16 | run 4 | Init Header Size 4| Event Header Size 4| releaseTagLength 1 | ReleaseTag var| processNameLength 1 | processName var| outputModuleLabelLength 1 | outputModuleLabel var | outputModuleId 4 | HLT Trig count 4| HLT Trig Length 4 | HLT Trig names var | HLT Selection count 4| HLT Selection Length 4 | HLT Selection names var | L1 Trig Count 4| L1 TrigName len 4| L1 Trig Names var |desc legth 4 | description blob var
Protocol Version 8: added data blob checksum and hostname code 1 | size 4 | protocol version 1 | pset 16 | run 4 | Init Header Size 4| Event Header Size 4| releaseTagLength 1 | ReleaseTag var| processNameLength 1 | processName var| outputModuleLabelLength 1 | outputModuleLabel var | outputModuleId 4 | HLT Trig count 4| HLT Trig Length 4 | HLT Trig names var | HLT Selection count 4| HLT Selection Length 4 | HLT Selection names var | L1 Trig Count 4| L1 TrigName len 4| L1 Trig Names var | adler32 chksum 4| host name length 4| host name var|desc legth 4 | description blob var
Protocol Version 9: identical to version 8, but incremented to keep in sync with event msg protocol version
Protocol Version 10: removed hostname code 1 | size 4 | protocol version 1 | pset 16 | run 4 | Init Header Size 4| Event Header Size 4| releaseTagLength 1 | ReleaseTag var| processNameLength 1 | processName var| outputModuleLabelLength 1 | outputModuleLabel var | outputModuleId 4 | HLT Trig count 4| HLT Trig Length 4 | HLT Trig names var | HLT Selection count 4| HLT Selection Length 4 | HLT Selection names var | L1 Trig Count 4| L1 TrigName len 4| L1 Trig Names var | adler32 chksum 4| desc legth 4 | description blob var
Protocol Version 11: identical to version 10, but incremented to keep in sync with event msg protocol version
This file contains Class definitions for the Class representing Output (Streamer) file.
StreamerOutputFile: Class for doing Streamer Write operations
Utility class for serializing framework objects (e.g. ProductRegistry and Event) into streamer message objects.
typedef unsigned char edm::streamer::char_uint16[sizeof(uint16)] |
Definition at line 18 of file MsgTools.h.
typedef unsigned char edm::streamer::char_uint32[sizeof(uint32)] |
Definition at line 17 of file MsgTools.h.
typedef unsigned char edm::streamer::char_uint64[sizeof(uint64)] |
Definition at line 16 of file MsgTools.h.
typedef std::vector<std::string> edm::streamer::Strings |
Definition at line 19 of file MsgTools.h.
typedef unsigned short edm::streamer::uint16 |
Definition at line 13 of file MsgTools.h.
typedef unsigned int edm::streamer::uint32 |
Definition at line 14 of file MsgTools.h.
typedef unsigned long long edm::streamer::uint64 |
Definition at line 15 of file MsgTools.h.
typedef unsigned char edm::streamer::uint8 |
Definition at line 12 of file MsgTools.h.
Enumerator | |
---|---|
UNCOMPRESSED | |
ZLIB | |
LZMA | |
ZSTD |
Definition at line 72 of file StreamSerializer.h.
|
inline |
Definition at line 43 of file MsgTools.h.
References mps_fire::i, and findQualityFiles::v.
Referenced by edm::streamer::EventMsgBuilder::EventMsgBuilder(), edm::streamer::MsgTools::fillNames(), edm::streamer::Header::Header(), edm::streamer::InitHeader::InitHeader(), edm::streamer::InitMsgBuilder::InitMsgBuilder(), edm::streamer::InitMsgBuilder::setDataLength(), edm::streamer::EventMsgBuilder::setEventLength(), and edm::streamer::EventMsgBuilder::setOrigDataSize().
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 29 of file MsgTools.h.
References a, b, DummyCfis::c, ztail::d, and findQualityFiles::v.
Referenced by edm::streamer::EventMsgView::droppedEventsCount(), edm::streamer::InitMsgView::eventHeaderSize(), edm::streamer::EventMsgView::EventMsgView(), edm::streamer::HeaderView::HeaderView(), edm::streamer::InitMsgView::InitMsgView(), edm::streamer::EventMsgView::lumi(), edm::streamer::EventMsgView::origDataSize(), edm::streamer::EventMsgView::outModId(), edm::streamer::StreamerInputFile::readEventMessage(), edm::streamer::InitMsgBuilder::run(), edm::streamer::InitMsgView::run(), and edm::streamer::EventMsgView::run().
|
inline |
Definition at line 21 of file MsgTools.h.
References a, b, DummyCfis::c, ztail::d, MillePedeFileConverter_cfg::e, f, g, h, and findQualityFiles::v.
Referenced by edm::streamer::EventMsgView::event(), and edm::streamer::StreamerInputFile::readEventMessage().
void edm::streamer::doBuildRealData | ( | const std::string & | name | ) |
Definition at line 22 of file ClassFiller.cc.
References edm::errors::Configuration, Exception, FDEBUG, and mergeVDriftHistosByStation::name.
Referenced by edm::streamer::StreamerInputSource::buildClassCache().
void edm::streamer::dumpEvent | ( | uint8 * | buf | ) |
Definition at line 180 of file DumpTools.cc.
References visDQMUpload::buf, gather_cfg::cout, and dumpEventHeader().
void edm::streamer::dumpEventHeader | ( | const EventMsgView * | eview | ) |
Definition at line 131 of file DumpTools.cc.
References edm::streamer::EventMsgView::adler32_chksum(), edm::streamer::EventMsgView::code(), edm::copy_all(), gather_cfg::cout, TauDecayModes::dec, edm::streamer::EventMsgView::droppedEventsCount(), edm::streamer::EventMsgView::event(), edm::streamer::EventMsgView::eventLength(), edm::streamer::EventMsgView::hltCount(), edm::streamer::EventMsgView::hltTriggerBits(), edm::streamer::EventMsgView::hostName(), mps_fire::i, edm::streamer::EventMsgView::l1TriggerBits(), edm::streamer::EventMsgView::lumi(), edm::streamer::EventMsgView::origDataSize(), edm::streamer::EventMsgView::outModId(), printBits(), edm::streamer::EventMsgView::protocolVersion(), edm::streamer::EventMsgView::run(), and edm::streamer::EventMsgView::size().
Referenced by dumpEvent(), dumpEventIndex(), and dumpEventView().
void edm::streamer::dumpEventIndex | ( | const EventMsgView * | eview | ) |
Definition at line 175 of file DumpTools.cc.
References gather_cfg::cout, and dumpEventHeader().
void edm::streamer::dumpEventView | ( | const EventMsgView * | eview | ) |
Definition at line 165 of file DumpTools.cc.
References gather_cfg::cout, and dumpEventHeader().
void edm::streamer::dumpFRDEventView | ( | const FRDEventMsgView * | fview | ) |
Definition at line 193 of file DumpTools.cc.
References gather_cfg::cout, edm::streamer::FRDEventMsgView::event(), edm::streamer::FRDEventMsgView::lumi(), edm::streamer::FRDEventMsgView::run(), edm::streamer::FRDEventMsgView::size(), and edm::streamer::FRDEventMsgView::version().
void edm::streamer::dumpInit | ( | uint8 * | buf | ) |
Definition at line 113 of file DumpTools.cc.
References visDQMUpload::buf, gather_cfg::cout, and dumpInitHeader().
void edm::streamer::dumpInitHeader | ( | const InitMsgView * | view | ) |
Definition at line 20 of file DumpTools.cc.
References edm::copy_all(), gather_cfg::cout, TauDecayModes::dec, cms::Digest::digest(), and AlCaHLTBitMon_QueryRunRegistry::string.
Referenced by dumpInit(), dumpInitVerbose(), dumpInitView(), and dumpStartMsg().
void edm::streamer::dumpInitVerbose | ( | const InitMsgView * | view | ) |
Definition at line 85 of file DumpTools.cc.
References edm::BranchDescription::branchName(), gather_cfg::cout, submitPVResolutionJobs::desc, dumpInitHeader(), getTClass(), and edm::BranchDescription::init().
void edm::streamer::dumpInitView | ( | const InitMsgView * | view | ) |
Definition at line 71 of file DumpTools.cc.
References gather_cfg::cout, and dumpInitHeader().
void edm::streamer::dumpStartMsg | ( | const InitMsgView * | view | ) |
Definition at line 80 of file DumpTools.cc.
References gather_cfg::cout, and dumpInitHeader().
|
inline |
Definition at line 81 of file FRDFileHeader.h.
References FRDFileHeader_id, mps_fire::i, runTheMatrix::ret, and relval_steps::version.
Referenced by evf::EvFDaqDirector::parseFRDFileHeader(), evf::EvFDaqDirector::rawFileHasHeader(), and FRDStreamSource::setRunAndEventInfo().
TClass * edm::streamer::getTClass | ( | const std::type_info & | ti | ) |
Definition at line 63 of file ClassFiller.cc.
Referenced by edm::streamer::StreamerInputSource::deserializeRegistry(), dumpInitVerbose(), and edm::streamer::StreamSerializer::serializeRegistry().
bool edm::streamer::loadCap | ( | const std::string & | name, |
std::vector< std::string > & | missingDictionaries | ||
) |
Definition at line 16 of file ClassFiller.cc.
References edm::TypeWithDict::byName(), edm::checkClassDictionaries(), FDEBUG, and mergeVDriftHistosByStation::name.
Referenced by edm::streamer::StreamerInputSource::declareStreamers(), and loadExtraClasses().
void edm::streamer::loadExtraClasses | ( | ) |
Definition at line 33 of file ClassFiller.cc.
References visDQMUpload::context, fileCollector::done, loadCap(), AlCaHLTBitMon_QueryRunRegistry::string, and edm::throwMissingDictionariesException().
Referenced by edm::streamer::StreamerInputSource::mergeIntoRegistry().
void edm::streamer::printBits | ( | unsigned char | c | ) |
Definition at line 124 of file DumpTools.cc.
References triggerObjects_cff::bit, DummyCfis::c, gather_cfg::cout, and mps_fire::i.
Referenced by dumpEventHeader().
const uint16 edm::streamer::FRDEVENT_MASK_ISGENDATA = 1 |
Definition at line 127 of file FRDEventMessage.h.
Referenced by edm::streamer::FRDEventMsgView::isRealData(), FRDOutputModule::write(), and RawEventOutputModuleForBU< Consumer >::write().
constexpr std::array<unsigned char, 4> edm::streamer::FRDFileHeader_id {{0x52, 0x41, 0x57, 0x5f}} |
Definition at line 22 of file FRDFileHeader.h.
Referenced by getFRDFileHeaderVersion().
constexpr std::array<unsigned char, 4> edm::streamer::FRDFileVersion_1 {{0x30, 0x30, 0x30, 0x31}} |
Definition at line 23 of file FRDFileHeader.h.
constexpr std::array<unsigned char, 4> edm::streamer::FRDFileVersion_2 {{0x30, 0x30, 0x30, 0x32}} |
Definition at line 24 of file FRDFileHeader.h.
constexpr size_t edm::streamer::FRDHeaderMaxVersion = 6 |
Definition at line 129 of file FRDEventMessage.h.
Referenced by FedRawDataInputSource::getNextEvent(), FedRawDataInputSource::readWorker(), FRDStreamSource::setRunAndEventInfo(), DataModeFRD::versionCheck(), DataModeScoutingRun3::versionCheck(), DataModeFRDStriped::versionCheck(), FRDOutputModule::write(), and RawEventOutputModuleForBU< Consumer >::write().
constexpr std::array<uint32, FRDHeaderMaxVersion + 1> edm::streamer::FRDHeaderVersionSize |
Definition at line 130 of file FRDEventMessage.h.
Referenced by FedRawDataInputSource::getNextEvent(), DataModeFRD::headerSize(), DataModeScoutingRun3::headerSize(), DataModeFRDStriped::headerSize(), FRDStreamSource::setRunAndEventInfo(), FRDOutputModule::write(), and RawEventOutputModuleForBU< Consumer >::write().