Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
ICutFlowSvc.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // Header file for class ICutFlowSvc //
8 // Authors: Joao Firmino da Costa (joao.costa@cern.ch) and David Cote (david.cote@cern.ch), July 2010 //
10 #ifndef ATHENAKERNEL_ICUTFLOWSVC_H
11 #define ATHENAKERNEL_ICUTFLOWSVC_H 1
12 
13 //<<<<<< INCLUDES >>>>>>
14 #include <vector>
15 #include <string>
16 #include <map>
17 #include <stdint.h> // for uint32_t
18 
20 
21 //<<<<<< FORWARD DECLARATIONS >>>>>>
22 class INamedInterface;
23 
24 
27 
28 
37  : virtual public ::INamedInterface
38 {
39 
40 public:
41 
43 
44  virtual ~ICutFlowSvc();
45 
46 
51  virtual CutIdentifier registerFilter( const std::string& name,
52  const std::string& description,
53  bool nominalOnly ) = 0;
54 
58  virtual CutIdentifier registerTopFilter ATLAS_NOT_THREAD_SAFE ( const std::string& name,
59  const std::string& description,
60  unsigned int logic,
61  const std::string& outputStream,
62  bool nominalOnly ) = 0;
63 
67  virtual CutIdentifier registerCut( const std::string& name,
68  const std::string& description,
69  CutIdentifier parentCutID,
70  bool nominalOnly ) = 0;
71 
73  virtual void setFilterDescription( CutIdentifier cutID,
74  const std::string& descr ) = 0;
75 
78  virtual void addEvent( CutIdentifier cutID,
79  const std::vector<float>& weights) = 0;
80 
83  virtual void addEvent( CutIdentifier cutID,
84  double weight) = 0;
85 
87  virtual uint64_t getNAcceptedEvents( const CutIdentifier cutID ) const = 0;
88 
89 };
90 
91 #endif //> !ATHENAKERNEL_ICUTFLOWSVC_H
ICutFlowSvc::DeclareInterfaceID
DeclareInterfaceID(ICutFlowSvc, 1, 0)
ICutFlowSvc::addEvent
virtual void addEvent(CutIdentifier cutID, const std::vector< float > &weights)=0
Tells CutFlowSvc to update the weighted event counter of a CutIdentifier A vector of weights is provi...
ICutFlowSvc
This class provides an interface between event filtering algorithms and athena input/output streams,...
Definition: ICutFlowSvc.h:38
ICutFlowSvc::ATLAS_NOT_THREAD_SAFE
virtual CutIdentifier registerTopFilter ATLAS_NOT_THREAD_SAFE(const std::string &name, const std::string &description, unsigned int logic, const std::string &outputStream, bool nominalOnly)=0
Tells CutFlowSvc that a filter is used directly by an outputStream with a given logical context.
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
ICutFlowSvc::registerFilter
virtual CutIdentifier registerFilter(const std::string &name, const std::string &description, bool nominalOnly)=0
Register filter in the CutFlowSvc and returns the CutID of the corresponding EventBookkeeper.
ICutFlowSvc::setFilterDescription
virtual void setFilterDescription(CutIdentifier cutID, const std::string &descr)=0
Set the description of an existing EventBookkeeper.
RunGeantinoStepRecordingITk.outputStream
outputStream
Definition: RunGeantinoStepRecordingITk.py:126
ICutFlowSvc::getNAcceptedEvents
virtual uint64_t getNAcceptedEvents(const CutIdentifier cutID) const =0
Get number of accepted events for a cut.
dqt_zlumi_pandas.weight
int weight
Definition: dqt_zlumi_pandas.py:189
ICutFlowSvc::~ICutFlowSvc
virtual ~ICutFlowSvc()
Definition: ICutFlowSvc.cxx:30
xAOD::uint64_t
uint64_t
Definition: EventInfo_v1.cxx:123
python.TransformConfig.descr
descr
print "%s.properties()" % self.__name__
Definition: TransformConfig.py:360
CutIdentifier
uint32_t CutIdentifier
InstanceIdentifier is a unique identifer used for every AthFilterAlgorithm instance.
Definition: ICutFlowSvc.h:22
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
weights
Definition: herwig7_interface.h:38
ICutFlowSvc::addEvent
virtual void addEvent(CutIdentifier cutID, double weight)=0
Tells CutFlowSvc to update the weighted event counter of a CutIdentifier The same weight is for all s...
ICutFlowSvc::registerCut
virtual CutIdentifier registerCut(const std::string &name, const std::string &description, CutIdentifier parentCutID, bool nominalOnly)=0
Register cut as child of a filter in the CutFlowSvc and returns the CutID of the corresponding EventB...
checker_macros.h
Define macros for attributes used to control the static checker.
description
std::string description
glabal timer - how long have I taken so far?
Definition: hcg.cxx:88