CMS 3D CMS Logo

FRDOutputModule.h
Go to the documentation of this file.
1 #ifndef IOPool_Streamer_interface_FRDOutputModule_h
2 #define IOPool_Streamer_interface_FRDOutputModule_h
3 
4 // CMSSW headers
7 
8 //#include "DataFormats/FEDRawData/interface/FEDRawData.h"
13 //#include "FWCore/ServiceRegistry/interface/ModuleCallingContext.h"
14 
15 class FRDOutputModule : public edm::one::OutputModule<edm::one::WatchLuminosityBlocks> {
16 public:
17  explicit FRDOutputModule(edm::ParameterSet const& ps);
18  ~FRDOutputModule() override;
19 
20  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
21 
22 private:
23  void write(edm::EventForOutput const& e) override;
24  //void beginRun(edm::RunForOutput const&) override {}
25  //void endRun(edm::RunForOutput const&) override {}
26  void writeRun(const edm::RunForOutput&) override {}
28 
31 
32  void finishFileWrite(unsigned int run, int ls);
33  uint32_t adler32() const { return (adlerb_ << 16) | adlera_; }
34 
36 
37  const uint32_t frdVersion_;
38  const uint32_t frdFileVersion_;
41 
42  int outfd_ = -1;
43  uint32_t adlera_;
44  uint32_t adlerb_;
45 
48 
49  bool fileWritten_ = false;
50 };
51 
52 #endif // IOPool_Streamer_interface_FRDOutputModule_h
void finishFileWrite(unsigned int run, int ls)
const uint32_t frdFileVersion_
uint32_t perFileEventCount_
uint64_t perFileSize_
FRDOutputModule(edm::ParameterSet const &ps)
void endLuminosityBlock(edm::LuminosityBlockForOutput const &) override
void writeRun(const edm::RunForOutput &) override
~FRDOutputModule() override
void beginLuminosityBlock(edm::LuminosityBlockForOutput const &) override
std::string filePrefix_
uint32_t adler32() const
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
void writeLuminosityBlock(const edm::LuminosityBlockForOutput &) override
std::string fileName_
const edm::EDGetTokenT< FEDRawDataCollection > token_
unsigned long long uint64_t
Definition: Time.h:13
const uint32_t frdVersion_
void write(edm::EventForOutput const &e) override