Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-05-31 04:19:42

0001 #include "IOPool/Streamer/interface/StreamerOutputModuleCommon.h"
0002 
0003 #include "IOPool/Streamer/interface/InitMsgBuilder.h"
0004 #include "IOPool/Streamer/interface/EventMsgBuilder.h"
0005 #include "FWCore/Framework/interface/EventForOutput.h"
0006 #include "FWCore/Framework/interface/EventSelector.h"
0007 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0008 #include "FWCore/ParameterSet/interface/ParameterSetDescription.h"
0009 #include "FWCore/Utilities/interface/DebugMacros.h"
0010 #include "FWCore/Version/interface/GetReleaseVersion.h"
0011 #include "DataFormats/Common/interface/TriggerResults.h"
0012 #include "DataFormats/Provenance/interface/ModuleDescription.h"
0013 #include "DataFormats/Provenance/interface/ParameterSetID.h"
0014 #include "DataFormats/Provenance/interface/SelectedProducts.h"
0015 #include "FWCore/Framework/interface/getAllTriggerNames.h"
0016 
0017 #include <iostream>
0018 #include <memory>
0019 #include <string>
0020 #include <sys/time.h>
0021 #include <unistd.h>
0022 #include <vector>
0023 #include <zlib.h>
0024 
0025 namespace edm::streamer {
0026   StreamerOutputModuleCommon::Parameters StreamerOutputModuleCommon::parameters(ParameterSet const& ps) {
0027     return StreamerOutputMsgBuilders::parameters(ps);
0028   }
0029 
0030   StreamerOutputModuleCommon::StreamerOutputModuleCommon(Parameters const& p,
0031                                                          SelectedProducts const* selections,
0032                                                          std::string const& moduleLabel)
0033       : builders_(p, selections, moduleLabel) {}
0034 
0035   StreamerOutputModuleCommon::~StreamerOutputModuleCommon() {}
0036 
0037   std::unique_ptr<InitMsgBuilder> StreamerOutputModuleCommon::serializeRegistry(
0038       std::string const& processName,
0039       std::string const& moduleLabel,
0040       ParameterSetID const& toplevel,
0041       SendJobHeader::ParameterSetMap const* psetMap) {
0042     return builders_.serializeRegistry(buffer_, processName, moduleLabel, toplevel, psetMap);
0043   }
0044 
0045   std::unique_ptr<EventMsgBuilder> StreamerOutputModuleCommon::serializeEvent(
0046       EventForOutput const& e, Handle<TriggerResults> const& triggerResults, ParameterSetID const& selectorCfg) {
0047     return builders_.serializeEvent(buffer_, e, triggerResults, selectorCfg, eventMetaDataChecksum_);
0048   }
0049 
0050   std::unique_ptr<EventMsgBuilder> StreamerOutputModuleCommon::serializeEventMetaData(
0051       BranchIDLists const& branchLists, ThinnedAssociationsHelper const& helper) {
0052     auto ret = builders_.serializeEventMetaData(buffer_, branchLists, helper);
0053     eventMetaDataChecksum_ = ret.second;
0054     return std::move(ret.first);
0055   }
0056 
0057   void StreamerOutputModuleCommon::fillDescription(ParameterSetDescription& desc) {
0058     StreamerOutputMsgBuilders::fillDescription(desc);
0059   }
0060 
0061 }  // namespace edm::streamer