ATLAS Offline Software
Loading...
Searching...
No Matches
IWorker.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2018 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 TEvent;
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
111
116 public:
117 virtual std::string inputFileName () const = 0;
118
119
124 public:
125 virtual TTree *triggerConfig () const = 0;
126
127
133 public:
134 virtual xAOD::TEvent *xaodEvent () const = 0;
135 virtual xAOD::TStore *xaodStore () const = 0;
136
137
142 public:
143 virtual EL::Algorithm *getAlg (const std::string& name) const = 0;
144
145
153 public:
154 virtual void skipEvent () = 0;
155 };
156}
157
158#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 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 xAOD::TEvent * xaodEvent() const =0
description: the xAOD event and store guarantee: strong failures: out of memory I failures: TEventSvc...
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 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
Tool for accessing xAOD files outside of Athena.
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.