ATLAS Offline Software
Functions
CutFlowSvc.cxx File Reference
#include <EventBookkeeperTools/CutFlowSvc.h>
#include <GaudiKernel/Incident.h>
#include <GaudiKernel/FileIncident.h>
#include <GaudiKernel/IIncidentSvc.h>
#include <EventInfo/EventStreamInfo.h>
#include <xAODMetaData/FileMetaData.h>
Include dependency graph for CutFlowSvc.cxx:

Go to the source code of this file.

Functions

CutIdentifier CutFlowSvc::registerTopFilter ATLAS_NOT_THREAD_SAFE (const std::string &name, const std::string &description, unsigned int logic, const std::string &outputStream, bool nominalOnly)
 

Function Documentation

◆ ATLAS_NOT_THREAD_SAFE()

CutIdentifier CutFlowSvc::registerTopFilter ATLAS_NOT_THREAD_SAFE ( const std::string &  name,
const std::string &  description,
unsigned int  logic,
const std::string &  outputStream,
bool  nominalOnly 
)

Definition at line 103 of file CutFlowSvc.cxx.

108 {
109  ATH_MSG_DEBUG("Registering top filter with name '" << name << "' and description '" << description << "'"
110  << ", logic=" << logic << ", outputStream=" << outputStream << ")");
111 
112  // Call the registerFilter method and get the correct CutBookkeeper
113  // from the returned cutID
114  CutIdentifier cutID = registerFilter(name, description, nominalOnly);
115  xAOD::CutBookkeeper* cbk = getCutBookkeeper(cutID, 0);
116  if (cbk == nullptr) {
117  ATH_MSG_ERROR("Could not find CutBookkeeper with CutID " << cutID);
118  throw std::runtime_error("Could not find CutBookkeeper");
119  }
120 
121  // Then set the logic and outputStream of the relevant CutBookkeeper
123  cbk->setTopFilter(true);
124  cbk->addOutputStreamForAllUsed(outputStream);
125 
126  return cutID;
127 }
xAOD::CutBookkeeper_v1
Description of the class that is used to keep track of event counts.
Definition: CutBookkeeper_v1.h:29
RunGeantinoStepRecordingITk.outputStream
outputStream
Definition: RunGeantinoStepRecordingITk.py:126
xAOD::CutBookkeeper_v1::CutLogic
CutLogic
Enumeration of the logic of a cut.
Definition: CutBookkeeper_v1.h:34
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
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:195
xAOD::CutBookkeeper_v1::setCutLogic
void setCutLogic(CutLogic logic)
Set the cut logic of this CutBookkeeper, e.g., ACCEPT, REQUIRE, VETO.
Definition: CutBookkeeper_v1.cxx:199
xAOD::CutBookkeeper_v1::setTopFilter
void setTopFilter(bool isTopFilter)
Set the top-filter property of this CutBookkeeper.
Definition: CutBookkeeper_v1.cxx:188
description
std::string description
glabal timer - how long have I taken so far?
Definition: hcg.cxx:88