diff --git a/PhysicsTools/NanoAOD/plugins/rntuple/NanoAODRNTupleOutputModule.cc b/PhysicsTools/NanoAOD/plugins/rntuple/NanoAODRNTupleOutputModule.cc index 3813eefb77c74..037bdc611ea24 100644 --- a/PhysicsTools/NanoAOD/plugins/rntuple/NanoAODRNTupleOutputModule.cc +++ b/PhysicsTools/NanoAOD/plugins/rntuple/NanoAODRNTupleOutputModule.cc @@ -74,20 +74,20 @@ class NanoAODRNTupleOutputModule : public edm::one::OutputModule<> { class CommonEventFields { public: void createFields(RNTupleModel& model) { - model.AddField("run", &m_run); - model.AddField("luminosityBlock", &m_luminosityBlock); - model.AddField("event", &m_event); + m_run = model.MakeField("run"); + m_luminosityBlock = model.MakeField("luminosityBlock"); + m_event = model.MakeField("event"); } void fill(const edm::EventID& id) { - m_run = id.run(); - m_luminosityBlock = id.luminosityBlock(); - m_event = id.event(); + *m_run = id.run(); + *m_luminosityBlock = id.luminosityBlock(); + *m_event = id.event(); } private: - UInt_t m_run; - UInt_t m_luminosityBlock; - std::uint64_t m_event; + std::shared_ptr m_run; + std::shared_ptr m_luminosityBlock; + std::shared_ptr m_event; } m_commonFields; LumiNTuple m_lumi; diff --git a/PhysicsTools/NanoAOD/plugins/rntuple/TriggerOutputFields.cc b/PhysicsTools/NanoAOD/plugins/rntuple/TriggerOutputFields.cc index 5d2576b50d001..e1fa1161bf8be 100644 --- a/PhysicsTools/NanoAOD/plugins/rntuple/TriggerOutputFields.cc +++ b/PhysicsTools/NanoAOD/plugins/rntuple/TriggerOutputFields.cc @@ -123,7 +123,11 @@ void TriggerOutputFields::updateTriggerFields(const edm::TriggerResults& trigger void TriggerOutputFields::makeUniqueFieldName(RNTupleModel& model, std::string& name) { // Could also use a cache of names in a higher-level object, don't ask the RNTupleModel each time - const auto* existing_field = model.Get(name); +#if ROOT_VERSION_CODE < ROOT_VERSION(6, 31, 0) + auto existing_field = model.Get(name); +#else + auto existing_field = model.GetDefaultEntry().GetPtr(name); +#endif if (!existing_field) { return; }