Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:23:39

0001 #ifndef PhysicsTools_NanoAOD_EventStringOutputFields_h
0002 #define PhysicsTools_NanoAOD_EventStringOutputFields_h
0003 
0004 #include <string>
0005 #include <vector>
0006 #include "FWCore/Utilities/interface/EDGetToken.h"
0007 
0008 #include <ROOT/RNTupleModel.hxx>
0009 using ROOT::Experimental::RNTupleModel;
0010 
0011 #include "RNTupleFieldPtr.h"
0012 
0013 class EventStringOutputFields {
0014 private:
0015   std::vector<edm::EDGetToken> m_tokens;
0016   RNTupleFieldPtr<std::vector<std::string>> m_evstrings;
0017   long m_lastLumi = -1;
0018 
0019 public:
0020   EventStringOutputFields() = default;
0021 
0022   void registerToken(const edm::EDGetToken &token);
0023   void createFields(RNTupleModel &model);
0024   void fill(const edm::EventForOutput &iEvent);
0025 };
0026 
0027 #endif