|
| DQMProtobufReader (edm::ParameterSet const &, edm::InputSourceDescription const &) |
|
| ~DQMProtobufReader () override |
|
bool | hasAbilityToProduceInBeginLumis () const final |
|
bool | hasAbilityToProduceInBeginRuns () const final |
|
PuttableSourceBase & | operator= (const PuttableSourceBase &)=delete |
|
| PuttableSourceBase (const PuttableSourceBase &)=delete |
|
| PuttableSourceBase (ParameterSet const &, InputSourceDescription const &) |
|
void | registerProducts () final |
| Register any produced products. More...
|
|
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
|
void | resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel) |
|
std::shared_ptr< ActivityRegistry > | actReg () const |
| Accessor for Activity Registry. More...
|
|
std::shared_ptr< BranchIDListHelper > & | branchIDListHelper () |
|
std::shared_ptr< BranchIDListHelper const > | branchIDListHelper () const |
| Accessors for branchIDListHelper. More...
|
|
void | closeFile (FileBlock *, bool cleaningUpAfterException) |
| close current file More...
|
|
void | doBeginJob () |
| Called by framework at beginning of job. More...
|
|
void | doEndJob () |
| Called by framework at end of job. More...
|
|
void | fillProcessBlockHelper () |
| Fill the ProcessBlockHelper with info for the current file. More...
|
|
ProcessingController::ForwardState | forwardState () const |
|
bool | goToEvent (EventID const &eventID) |
|
| InputSource (InputSource const &)=delete |
|
| InputSource (ParameterSet const &, InputSourceDescription const &) |
| Constructor. More...
|
|
void | issueReports (EventID const &eventID, StreamID streamID) |
| issue an event report More...
|
|
LuminosityBlockNumber_t | luminosityBlock () const |
| Accessor for current luminosity block number. More...
|
|
std::shared_ptr< LuminosityBlockAuxiliary > | luminosityBlockAuxiliary () const |
| Called by the framework to merge or insert lumi in principal cache. More...
|
|
int | maxEvents () const |
|
int | maxLuminosityBlocks () const |
|
ModuleDescription const & | moduleDescription () const |
| Accessor for 'module' description. More...
|
|
ItemType | nextItemType () |
| Advances the source to the next item. More...
|
|
bool | nextProcessBlock (ProcessBlockPrincipal &) |
| Next process block, return false if there is none, sets the processName in the principal. More...
|
|
InputSource & | operator= (InputSource const &)=delete |
|
std::shared_ptr< ProcessBlockHelper > & | processBlockHelper () |
|
std::shared_ptr< ProcessBlockHelper const > | processBlockHelper () const |
| Accessors for processBlockHelper. More...
|
|
ProcessConfiguration const & | processConfiguration () const |
| Accessor for Process Configuration. More...
|
|
std::string const & | processGUID () const |
| Accessor for global process identifier. More...
|
|
ProcessHistoryRegistry & | processHistoryRegistry () |
|
ProcessHistoryRegistry const & | processHistoryRegistry () const |
| Accessors for process history registry. More...
|
|
ProcessingMode | processingMode () const |
| RunsLumisAndEvents (default), RunsAndLumis, or Runs. More...
|
|
std::shared_ptr< ProductRegistry > & | productRegistry () |
|
std::shared_ptr< ProductRegistry const > | productRegistry () const |
| Accessors for product registry. More...
|
|
bool | randomAccess () const |
|
void | readAndMergeLumi (LuminosityBlockPrincipal &lbp) |
| Read next luminosity block (same as a prior lumi) More...
|
|
void | readAndMergeRun (RunPrincipal &rp) |
| Read next run (same as a prior run) More...
|
|
bool | readEvent (EventPrincipal &ep, EventID const &, StreamContext &) |
| Read a specific event. More...
|
|
void | readEvent (EventPrincipal &ep, StreamContext &) |
| Read next event. More...
|
|
std::shared_ptr< FileBlock > | readFile () |
| Read next file. More...
|
|
void | readLuminosityBlock (LuminosityBlockPrincipal &lumiPrincipal, HistoryAppender &historyAppender) |
| Read next luminosity block (new lumi) More...
|
|
std::shared_ptr< LuminosityBlockAuxiliary > | readLuminosityBlockAuxiliary () |
| Read next luminosity block Auxilary. More...
|
|
void | readProcessBlock (ProcessBlockPrincipal &) |
| Read next process block. More...
|
|
void | readRun (RunPrincipal &runPrincipal, HistoryAppender &historyAppender) |
| Read next run (new run) More...
|
|
std::shared_ptr< RunAuxiliary > | readRunAuxiliary () |
| Read next run Auxiliary. More...
|
|
ProcessHistoryID const & | reducedProcessHistoryID () const |
|
int | remainingEvents () const |
|
int | remainingLuminosityBlocks () const |
|
void | repeat () |
| Reset the remaining number of events/lumis to the maximum number. More...
|
|
std::pair< SharedResourcesAcquirer *, std::recursive_mutex * > | resourceSharedWithDelayedReader () |
| Returns nullptr if no resource shared between the Source and a DelayedReader. More...
|
|
ProcessingController::ReverseState | reverseState () const |
|
void | rewind () |
| Begin again at the first event. More...
|
|
RunNumber_t | run () const |
| Accessor for current run number. More...
|
|
std::shared_ptr< RunAuxiliary > | runAuxiliary () const |
| Called by the framework to merge or insert run in principal cache. More...
|
|
void | setLuminosityBlockNumber_t (LuminosityBlockNumber_t lb) |
| Set the luminosity block ID. More...
|
|
void | setRunNumber (RunNumber_t r) |
| Set the run number. More...
|
|
void | skipEvents (int offset) |
|
std::shared_ptr< ThinnedAssociationsHelper > & | thinnedAssociationsHelper () |
|
std::shared_ptr< ThinnedAssociationsHelper const > | thinnedAssociationsHelper () const |
| Accessors for thinnedAssociationsHelper. More...
|
|
Timestamp const & | timestamp () const |
| Accessor for the current time, as seen by the input source. More...
|
|
virtual | ~InputSource () noexcept(false) |
| Destructor. More...
|
|
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
|
std::vector< edm::ProductResolverIndex > const & | indiciesForPutProducts (BranchType iBranchType) const |
|
| ProducerBase () |
|
std::vector< edm::ProductResolverIndex > const & | putTokenIndexToProductResolverIndex () const |
|
std::vector< bool > const & | recordProvenanceList () const |
|
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
|
std::function< void(BranchDescription const &)> | registrationCallback () const |
| used by the fwk to register list of products More...
|
|
void | resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel) |
|
TypeLabelList const & | typeLabelList () const |
| used by the fwk to register the list of products of this module More...
|
|
| ~ProducerBase () noexcept(false) override |
|
|
signalslot::Signal< void(StreamContext const &, ModuleCallingContext const &)> | postEventReadFromSourceSignal_ |
|
signalslot::Signal< void(StreamContext const &, ModuleCallingContext const &)> | preEventReadFromSourceSignal_ |
|
void | beginJob () override |
| Begin protected makes it easier to do template programming. More...
|
|
void | decreaseRemainingEventsBy (int iSkipped) |
|
bool | eventCached () const |
|
bool | newLumi () const |
|
bool | newRun () const |
|
ProcessHistoryRegistry & | processHistoryRegistryForUpdate () |
|
ProductRegistry & | productRegistryUpdate () |
|
void | reset () const |
|
void | resetEventCached () |
|
void | resetLuminosityBlockAuxiliary (bool isNewLumi=true) const |
|
void | resetNewLumi () |
|
void | resetNewRun () |
|
void | resetRunAuxiliary (bool isNewRun=true) const |
|
void | setEventCached () |
| Called by the framework to merge or ached() const {return eventCached_;}. More...
|
|
void | setLuminosityBlockAuxiliary (LuminosityBlockAuxiliary *lbp) |
|
void | setNewLumi () |
|
void | setNewRun () |
|
void | setRunAuxiliary (RunAuxiliary *rp) |
|
void | setTimestamp (Timestamp const &theTime) |
| To set the current time, as seen by the input source. More...
|
|
virtual void | skip (int offset) |
|
ItemType | state () const |
|
template<class ProductType > |
BranchAliasSetterT< ProductType > | produces () |
| declare what type of product will make and with which optional label More...
|
|
template<typename ProductType , BranchType B> |
BranchAliasSetterT< ProductType > | produces () |
|
template<typename ProductType , Transition B> |
BranchAliasSetterT< ProductType > | produces () |
|
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
|
template<BranchType B> |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
|
template<Transition B> |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
|
template<typename ProductType , Transition B> |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
|
template<class ProductType > |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
|
template<typename ProductType , BranchType B> |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
|
ProducesCollector | producesCollector () |
|
Definition at line 19 of file DQMProtobufReader.h.
void DQMProtobufReader::load |
( |
DQMStore * |
store, |
|
|
std::string |
filename |
|
) |
| |
|
private |
Definition at line 154 of file DQMProtobufReader.cc.
155 using google::protobuf::io::ArrayInputStream;
156 using google::protobuf::io::CodedInputStream;
157 using google::protobuf::io::FileInputStream;
158 using google::protobuf::io::FileOutputStream;
159 using google::protobuf::io::GzipInputStream;
160 using google::protobuf::io::GzipOutputStream;
163 if ((filedescriptor = ::open(
filename.c_str(), O_RDONLY)) == -1) {
168 FileInputStream
fin(filedescriptor);
170 CodedInputStream input_coded(&
input);
171 input_coded.SetTotalBytesLimit(1024 * 1024 * 1024);
172 if (!dqmstore_message.ParseFromCodedStream(&input_coded)) {
176 ::close(filedescriptor);
178 for (
int i = 0;
i < dqmstore_message.histo_size(); ++
i) {
179 TObject*
obj =
nullptr;
180 dqmstorepb::ROOTFilePB::Histo
const&
h = dqmstore_message.histo(
i);
182 size_t slash =
h.full_pathname().rfind(
'/');
183 size_t dirpos = (
slash == std::string::npos ? 0 :
slash);
184 size_t namepos = (
slash == std::string::npos ? 0 :
slash + 1);
186 dirname.assign(
h.full_pathname(), 0, dirpos);
187 objname.assign(
h.full_pathname(), namepos, std::string::npos);
188 TBufferFile
buf(TBufferFile::kRead,
h.size(), (
void*)
h.streamed_histo().data(), kFALSE);
190 if (
buf.Length() ==
buf.BufferSize()) {
194 void* ptr =
buf.ReadObjectAny(
nullptr);
195 obj = reinterpret_cast<TObject*>(ptr);
199 edm::LogError(
"DQMProtobufReader") <<
"Error reading element:'" <<
h.full_pathname();
205 store->
setScope(MonitorElementData::Scope::LUMI);
207 store->
setScope(MonitorElementData::Scope::RUN);
215 std::regex parseint{
"<.*>i=(.*)</.*>"};
217 bool ok = std::regex_match(expression,
match, parseint);
219 edm::LogError(
"DQMProtobufReader") <<
"Malformed object of type INT: '" << expression <<
"'";
227 std::regex parsefloat{
"<.*>f=(.*)</.*>"};
229 bool ok = std::regex_match(expression,
match, parsefloat);
231 edm::LogError(
"DQMProtobufReader") <<
"Malformed object of type REAL: '" << expression <<
"'";
237 auto value = static_cast<TObjString*>(
obj)->String();
240 auto value = static_cast<TH1F*>(
obj);
243 auto value = static_cast<TH1S*>(
obj);
246 auto value = static_cast<TH1D*>(
obj);
249 auto value = static_cast<TH2F*>(
obj);
252 auto value = static_cast<TH2S*>(
obj);
255 auto value = static_cast<TH2D*>(
obj);
258 auto value = static_cast<TH3F*>(
obj);
261 auto value = static_cast<TProfile*>(
obj);
264 auto value = static_cast<TProfile2D*>(
obj);
References dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book1DD(), dqm::implementation::IBooker::book1S(), dqm::implementation::IBooker::book2D(), dqm::implementation::IBooker::book2DD(), dqm::implementation::IBooker::book2S(), dqm::implementation::IBooker::book3D(), dqm::implementation::IBooker::bookFloat(), dqm::implementation::IBooker::bookInt(), dqm::implementation::IBooker::bookProfile(), dqm::implementation::IBooker::bookProfile2D(), dqm::implementation::IBooker::bookString(), visDQMUpload::buf, BTVHLTOfflineSource_cfi::dirname, DQMNet::DQM_PROP_LUMI, DQMNet::DQM_PROP_TYPE_INT, DQMNet::DQM_PROP_TYPE_MASK, DQMNet::DQM_PROP_TYPE_REAL, DQMNet::DQM_PROP_TYPE_STRING, DQMNet::DQM_PROP_TYPE_TH1D, DQMNet::DQM_PROP_TYPE_TH1F, DQMNet::DQM_PROP_TYPE_TH1S, DQMNet::DQM_PROP_TYPE_TH2D, DQMNet::DQM_PROP_TYPE_TH2F, DQMNet::DQM_PROP_TYPE_TH2S, DQMNet::DQM_PROP_TYPE_TH3F, DQMNet::DQM_PROP_TYPE_TPROF, DQMNet::DQM_PROP_TYPE_TPROF2D, corrVsCorr::filename, groupFilesInBlocks::fin, mps_fire::i, input, CalibrationSummaryClient_cfi::kind, match(), hlt_dqm_clientPB-live_cfg::me, getGTfromDQMFile::obj, convertSQLiteXML::ok, dqm::implementation::DQMStore::setCurrentFolder(), dqm::implementation::IBooker::setScope(), pickleFileParser::slash, str, and AlCaHLTBitMon_QueryRunRegistry::string.
Referenced by beginLuminosityBlock(), and getNextItemType().