ATLAS Offline Software
Loading...
Searching...
No Matches
AsgxAODNTupleMakerAlg.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2//
3// Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
4//
5#ifndef ASGANALYSISALGORITHMS_ASGXAODNTUPLEMAKERALG_H
6#define ASGANALYSISALGORITHMS_ASGXAODNTUPLEMAKERALG_H
7
8// System include(s):
9#include <unordered_map>
10#include <string>
11#include <vector>
12#include <memory>
13#include <list>
14
15// Framework include(s):
22
23// EDM include(s):
26
27// local include(s):
29
30// Forward declaration(s):
31class TClass;
32class TTree;
33class TVirtualCollectionProxy;
34namespace SG {
35 class AuxVectorBase;
37}
38
39namespace CP {
40
63
64 public:
67
70
72 StatusCode initialize() override;
73
75 StatusCode execute() override;
76
78 StatusCode finalize() override;
79
81
82 private:
83
86
88 Gaudi::Property<std::string> m_treeName {this, "TreeName", "physics", "Name of the tree to write"};
90 Gaudi::Property<std::vector<std::string>> m_branches {this, "Branches", {}, "Branches to write to the output tree"};
91 Gaudi::Property<std::vector<std::string>> m_nonContainers {this, "NonContainers", {"EventInfo"}, "List of objects that are single elements, not containers"};
92 Gaudi::Property<int> m_defaultBasketSize {this, "DefaultBasketSize", 0, "Default basket size for tree branches (0 means ROOT default)"};
93
95
98
100
102 TTree* m_tree = nullptr;
103
105 ServiceHandle<ISystematicsSvc> m_systematicsService {this, "systematicsService", "SystematicsSvc", "systematics service"};
106
108
109 }; // class AsgxAODNTupleMakerAlg
110
111} // namespace CP
112
113#endif // ASGANALYSISALGORITHMS_ASGXAODNTUPLEMAKERALG_H
Base class for elements of a container that can have aux data.
Abstract interface for manipulating vectors of arbitrary types.
Define macros for attributes used to control the static checker.
Algorithm that can write a simple ntuple from xAOD objects/variables.
Gaudi::Property< int > m_defaultBasketSize
ServiceHandle< ISystematicsSvc > m_systematicsService
the handle for the systematics service
StatusCode execute() override
Function executed once per event.
TreeBranchHelpers::ProcessorList m_processorList
Gaudi::Property< std::vector< std::string > > m_nonContainers
StatusCode finalize() override
Function executed as part of the job finalisation.
Gaudi::Property< std::string > m_treeName
The name of the output tree to write.
TTree * m_tree
The tree being written.
Gaudi::Property< std::vector< std::string > > m_branches
The branches to write into this output tree.
the (new) base class for EventLoop algorithms
AnaAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
constructor with parameters
Manage index tracking and synchronization of auxiliary data.
Interface for factory objects that create vectors.
Select isolated Photons, Electrons and Muons.
Forward declaration.
void ErrorHandler ATLAS_NOT_THREAD_SAFE(Int_t level, Bool_t abort, const char *location, const char *message)
Function filtering the warnings coming from ROOT.
Definition Init.cxx:105
void initialize()