10#ifndef ANA_ALGORITHM__ANA_ALGORITHM_H
11#define ANA_ALGORITHM__ANA_ALGORITHM_H
25#include <GaudiKernel/IIncidentListener.h>
26#include <GaudiKernel/ServiceHandle.h>
69 :
public asg::AsgComponent
90 ISvcLocator* pSvcLocator);
104#ifdef XAOD_STANDALONE
126#ifdef XAOD_STANDALONE
162 template<
typename T=TH1>
163 T *
hist (
const std::string& name)
const;
172 TH2 *
hist2d (
const std::string& name)
const;
181 TH3 *
hist3d (
const std::string& name)
const;
194 TEfficiency *histeff (
const std::string& name)
const;
195 TEfficiency *
efficiency (
const std::string& name)
const;
223 TTree *
tree (
const std::string& name)
const;
251 bool filterPassed()
const;
257 void setFilterPassed (
bool val_filterPassed);
321 virtual ::StatusCode
execute ();
336 virtual void print ()
const;
423#ifdef XAOD_STANDALONE
499 bool hasFileExecute ()
const noexcept;
507 bool hasBeginInputFile ()
const noexcept;
515 bool hasEndInputFile ()
const noexcept;
519#ifndef XAOD_STANDALONE
526 void handle (
const Incident& inc);
535#ifdef XAOD_STANDALONE
541#ifdef XAOD_STANDALONE
557#ifdef XAOD_STANDALONE
563#ifdef XAOD_STANDALONE
569 std::string m_treeStreamName;
572#ifdef XAOD_STANDALONE
578#ifdef XAOD_STANDALONE
StoreGateSvc_t m_evtStore
ServiceHandle< StoreGateSvc > & evtStore()
virtual StatusCode sysInitialize()
Initialization method invoked by the framework.
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
TTree * tree(const std::string &treeName, const std::string &tDir="", const std::string &stream="")
Simplify the retrieval of registered TTrees.
StatusCode book(const TH1 &hist, const std::string &tDir="", const std::string &stream="")
Simplify the booking and registering (into THistSvc) of histograms.
TH1 * hist(const std::string &histName, const std::string &tDir="", const std::string &stream="")
Simplify the retrieval of registered histograms of any type.
TH3 * hist3d(const std::string &histName, const std::string &tDir="", const std::string &stream="")
Simplify the retrieval of registered 3-d histograms.
TEfficiency * efficiency(const std::string &effName, const std::string &tDir="", const std::string &stream="")
Simplify the retrieval of registered TEfficiency.
TH2 * hist2d(const std::string &histName, const std::string &tDir="", const std::string &stream="")
Simplify the retrieval of registered 2-d histograms.
virtual void print() const
print the state of the algorithm
virtual::StatusCode endInputFile()
perform the action for the end of an input file
ConstMetaStorePtr_t inputMetaStore() const
::StatusCode requestBeginInputFile()
register this algorithm to have an implementation of beginInputFile
virtual::StatusCode fileExecute()
perform the action exactly once for each file in the dataset
bool m_hasBeginInputFile
the value of hasBeginInputFile
AnaAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
constructor with parameters
::StatusCode requestEndInputFile()
register this algorithm to have an implementation of endInputFile
::StatusCode requestFileExecute()
register this algorithm to have an implementation of fileexecute
bool m_hasFileExecute
the value of hasFileExecute
MetaStore_t m_outputMetaStore
Object accessing the output metadata store.
MetaStore_t m_inputMetaStore
Object accessing the input metadata store.
ServiceHandle< StoreGateSvc > MetaStore_t
Type of the metadata store variable in Athena.
void handle(const Incident &inc)
receive the given incident
virtual::StatusCode execute()
execute this algorithm
ServiceHandle< StoreGateSvc > & MetaStorePtr_t
Type of the metadata store pointer in standalone mode.
bool m_hasEndInputFile
the value of hasEndInputFile
const ServiceHandle< StoreGateSvc > & ConstMetaStorePtr_t
virtual::StatusCode finalize()
finalize this algorithm
virtual::StatusCode beginInputFile()
perform the action for the beginning of an input file
ConstMetaStorePtr_t outputMetaStore() const
virtual::StatusCode initialize()
initialize this algorithm
virtual ~AnaAlgorithm() noexcept
standard (virtual) destructor
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.
the interface for algorithms to access IWorker
Wrapper for TEvent to make it look like StoreGate.
This module defines the arguments passed from the BATCH driver to the BATCH worker.
::StatusCode StatusCode
StatusCode definition for legacy code.