ATLAS Offline Software
Loading...
Searching...
No Matches
IWorker.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
6
7
8
9#ifndef EVENT_LOOP__I_WORKER_H
10#define EVENT_LOOP__I_WORKER_H
11
12#include <EventLoop/Global.h>
13
17
18#include <Rtypes.h>
20
21class TFile;
22
23namespace xAOD
24{
25 class Event;
26 class TStore;
27}
28
29namespace EL
30{
37
38 class IWorker : public IFilterWorker, public IHistogramWorker,
39 public ITreeWorker
40 {
41
52 public:
53 virtual void addOutputList (const std::string& name, TObject *output_swallow) = 0;
54
55
65 public:
66 virtual TFile *getOutputFile (const std::string& label) const = 0;
67
68
82 public:
83 virtual TFile *getOutputFileNull (const std::string& label) const = 0;
84
85
90 public:
91 virtual const SH::MetaObject *metaData () const = 0;
92
93
96 public:
97 virtual TTree *tree () const = 0;
98
99
102 public:
103 virtual Long64_t treeEntry () const = 0;
104
105
108 public:
109 virtual TFile *inputFile () const = 0;
110
113 public:
114 virtual bool hasInputEvents () const = 0;
115
120 public:
121 virtual std::string inputFileName () const = 0;
122
123
128 public:
129 virtual TTree *triggerConfig () const = 0;
130
131
137 public:
138 virtual xAOD::Event *xaodEvent () const = 0;
139 virtual xAOD::TStore *xaodStore () const = 0;
140
141
146 public:
147 virtual EL::Algorithm *getAlg (const std::string& name) const = 0;
148
149
157 public:
158 virtual void skipEvent () = 0;
159 };
160}
161
162#endif
the interface to the filter functions in the algorithm sequence
the interface to histogram storage on the worker
The interface to TTree storage on the worker.
Definition ITreeWorker.h:32
the interface for algorithms to access IWorker
Definition IWorker.h:40
virtual TFile * getOutputFileNull(const std::string &label) const =0
effects: get the output file that goes into the dataset with the given label.
virtual TFile * getOutputFile(const std::string &label) const =0
effects: get the output file that goes into the dataset with the given label.
virtual std::string inputFileName() const =0
the name of the file we are reading the current tree from, without the path component
virtual xAOD::Event * xaodEvent() const =0
description: the xAOD event and store guarantee: strong failures: out of memory I failures: EventSvc ...
virtual void skipEvent()=0
effects: skip the current event, i.e.
virtual void addOutputList(const std::string &name, TObject *output_swallow)=0
effects: add a given object to the output.
virtual xAOD::TStore * xaodStore() const =0
virtual TFile * inputFile() const =0
description: the file we are reading the current tree from guarantee: no-fail
virtual TTree * triggerConfig() const =0
description: the trigger config tree from the input file, or NULL if we did not find it guarantee: st...
virtual EL::Algorithm * getAlg(const std::string &name) const =0
effects: returns the algorithms with the given name or NULL if there is none guarantee: strong failur...
virtual Long64_t treeEntry() const =0
description: the entry in the tree we are reading guarantee: no-fail
virtual const SH::MetaObject * metaData() const =0
description: the sample meta-data we are working on guarantee: no-fail invariant: metaData !...
virtual bool hasInputEvents() const =0
flag whether the most recently opened input file has events or not
virtual TTree * tree() const =0
description: the tree we are running on guarantee: no-fail
A class that manages meta-data to be associated with an object.
Definition MetaObject.h:56
Base class for the event (xAOD::TEvent and xAOD::REvent) classes.
Definition Event.h:60
A relatively simple transient store for objects created in analysis.
Definition TStore.h:45
std::string label(const std::string &format, int i)
Definition label.h:19
This module defines the arguments passed from the BATCH driver to the BATCH worker.
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.