DAS  3.0
Das Analysis System
JetTreeFlattener

Description

Plugin to produce a flat branches for jet variables.

The output format is compatible with NANOAOD from CMS.

Todo:
Change Jet (GenJet) into FatJet (GenJetAK8) for AK8 jets.
+ Inheritance diagram for JetTreeFlattener:
+ Collaboration diagram for JetTreeFlattener:

Public Member Functions

virtual void Load (DT::Flow &flow, DT::MetaInfo &metainfo, int steering=0, const pt::ptree &config={}) override
 
- Public Member Functions inherited from TreeFlattener
 TreeFlattener ()=default
 
virtual ~TreeFlattener ()=default
 
virtual void ExecuteAtBegin (const std::set< Variation > &={nominal}) override
 
virtual void ExecuteAtEnd (const std::set< Variation > &={nominal}) override
 
 TreeFlattener ()=default
 
virtual ~TreeFlattener ()=default
 
virtual void ExecuteAtBegin (const std::set< Variation > &={nominal}) override
 
virtual void ExecuteAtEnd (const std::set< Variation > &={nominal}) override
 
- Public Member Functions inherited from GenericPlugin
 GenericPlugin ()=default
 
virtual ~GenericPlugin ()=default
 
virtual void Write (TDirectory *)
 
 GenericPlugin ()=default
 
virtual ~GenericPlugin ()=default
 
virtual void Write (TDirectory *)
 
- Public Member Functions inherited from IPlugin
 IPlugin ()=default
 
virtual ~IPlugin ()
 
void SetPath (const std::filesystem::path &file) noexcept
 
virtual void Load (Darwin::Tools::Flow &, Darwin::Tools::MetaInfo &, int=0, const boost::property_tree::ptree &={})
 
 IPlugin ()=default
 
virtual ~IPlugin ()
 
void SetPath (const std::filesystem::path &file) noexcept
 
virtual void Load (Darwin::Tools::Flow &, Darwin::Tools::MetaInfo &, int=0, const boost::property_tree::ptree &={})
 

Additional Inherited Members

- Protected Member Functions inherited from TreeFlattener
virtual int GetParamsVeto () noexcept override
 
virtual int GetParamsVeto () noexcept override
 
- Protected Attributes inherited from TreeFlattener
std::list< std::unique_ptr< BranchFlattener > > branch_flatteners
 
- Protected Attributes inherited from IPlugin
int steering = none
 
bool isMC = false
 

Member Function Documentation

◆ Load()

virtual void Load ( DT::Flow flow,
DT::MetaInfo metainfo,
int  steering = 0,
const pt::ptree &  config = {} 
)
inlineoverridevirtual
Note
: selectors are stored differently in NANOAOD
Todo:
Emplace more branch flatteners to handle variations
30  {}
31  ) override
32  {
33  TreeFlattener::Load(flow, metainfo, steering, config);
34 
35  auto recJets_flattener = make_unique<ScaledObjectBranchFlattener<RecJet>>(flow, nominal, "recJets", "Jet");
36 
38  recJets_flattener->Add<uint32_t>(flow, "Jet_selectors", [](const RecJet& jet) { return jet.selectors; });
39  recJets_flattener->Add<float>(flow, "Jet_area", [](const RecJet& jet) { return jet.area; });
40 
41  branch_flatteners.emplace_back(std::move(recJets_flattener));
42  branch_flatteners.emplace_back(make_unique<ScaledObjectBranchFlattener<GenJet>>(flow, nominal, "genJets", "GenJet"));
43 
45  }

The documentation for this class was generated from the following file:
Darwin::Tools::IPlugin::Load
virtual void Load(Darwin::Tools::Flow &, Darwin::Tools::MetaInfo &, int=0, const boost::property_tree::ptree &={})
Set steering.
Definition: IPlugin.cc:18
Darwin::Physics::TreeFlattener::branch_flatteners
std::list< std::unique_ptr< BranchFlattener > > branch_flatteners
Definition: Flattener.h:197
Ntupliser_cfg.config
config
Definition: Ntupliser_cfg.py:333
Darwin::Physics::ScaledObjectBranchFlattener
Wrapper for flat branches for gen- or rec-level final-state objects.
Definition: Flattener.h:55
Darwin::Physics::RecJet
Generic detector-level jet.
Definition: Jet.h:40
Darwin::Physics::nominal
const Variation nominal("", "nominal")
Darwin::Tools::IPlugin::steering
int steering
runtime steering options from command line (
Definition: IPlugin.h:33