ATLAS Offline Software
Loading...
Searching...
No Matches
IInputModuleActions.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
6
7
8#ifndef EVENT_LOOP__I_INPUT_MODULE_ACTIONS_H
9#define EVENT_LOOP__I_INPUT_MODULE_ACTIONS_H
10
11#include <Rtypes.h>
12#include <optional>
13#include <string>
14
15class StatusCode;
16
17namespace EL
18{
19 struct EventRange;
20
21 namespace Detail
22 {
23 struct ModuleData;
24
25
40
42 {
43 public:
44
46 virtual ~IInputModuleActions () noexcept = default;
47
48
59 virtual ::StatusCode processEvents (EventRange& eventRange) = 0;
60
61
72 virtual ::StatusCode openInputFile (const std::string& inputFileUrl) = 0;
73
74
77 [[nodiscard]] virtual Long64_t inputFileNumEntries () const = 0;
78 };
79 }
80}
81
82#endif
the actions that Module::processInputs can perform
virtual::StatusCode processEvents(EventRange &eventRange)=0
process the given event range
virtual ~IInputModuleActions() noexcept=default
standard virtual destructor
virtual::StatusCode openInputFile(const std::string &inputFileUrl)=0
open the given input file without processing it
virtual Long64_t inputFileNumEntries() const =0
the number of events in the input file
This module defines the arguments passed from the BATCH driver to the BATCH worker.
::StatusCode StatusCode
StatusCode definition for legacy code.
STL namespace.
the data the EventLoop core classes are sharing with the Module implementation
Definition ModuleData.h:64
a range of events in a given file
Definition EventRange.h:22