ATLAS Offline Software
Loading...
Searching...
No Matches
CaloCellMaker.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef CALOREC_CALOCELLMAKER_H
6#define CALOREC_CALOCELLMAKER_H
7
8/********************************************************************
9
10 NAME: CaloCellMaker.h
11 PACKAGE: offline/Calorimeter/CaloRec
12
13 AUTHORS: David Rousseau
14 CREATED: May 11, 2004
15
16 PURPOSE: Create a CaloCellContainer by calling a set of tools
17 sharing interface CaloInterface/ICaloCellMakerTool.h
18
19 ********************************************************************/
20
21// Gaudi includes
22#include "GaudiKernel/ToolHandle.h"
23#include "GaudiKernel/ServiceHandle.h"
24
25// Athena includes
28
29// Calo includes
31//#include "CaloInterface/ICaloCellMakerTool.h"
32
33class IChronoStatSvc;
35
37
38 public:
39 using AthReentrantAlgorithm::AthReentrantAlgorithm;
40 virtual ~CaloCellMaker() = default;
41
42 virtual StatusCode initialize() override;
43 virtual StatusCode execute (const EventContext& ctx) const override;
44 virtual StatusCode finalize() override;
45
46 private:
47
49 ServiceHandle<IChronoStatSvc> m_chrono{this,"ChronoStatSvc","ChronoStatSvc"};
50 Gaudi::Property<bool> m_doChronoStat{this,"EnableChronoStat",true};
51
52 //Decide if the container owns the cells or views it (default false=view)
53 Gaudi::Property<bool> m_ownPolicyProp{this,"OwnPolicy",false};
55
57 SG::WriteHandleKey<CaloCellContainer> m_caloCellsOutputKey{this,"CaloCellsOutputName","AllCalo","SG Key of the output container"};
58
60 ToolHandleArray<ICaloCellMakerTool> m_caloCellMakerTools{this,"CaloCellMakerToolNames",{}};
61
62};
63#endif
Property holding a SG store/key/clid from which a WriteHandle is made.
An algorithm that can be simultaneously executed in multiple threads.
Gaudi::Property< bool > m_doChronoStat
SG::OwnershipPolicy m_ownPolicy
SG::WriteHandleKey< CaloCellContainer > m_caloCellsOutputKey
Output cell continer to be used.
virtual StatusCode initialize() override
ServiceHandle< IChronoStatSvc > m_chrono
ChronoStatSvc.
virtual StatusCode finalize() override
Gaudi::Property< bool > m_ownPolicyProp
virtual ~CaloCellMaker()=default
ToolHandleArray< ICaloCellMakerTool > m_caloCellMakerTools
Array of CellMaker (and corrector) AlgTools.
virtual StatusCode execute(const EventContext &ctx) const override
Property holding a SG store/key/clid from which a WriteHandle is made.
OwnershipPolicy
@ VIEW_ELEMENTS
this data object is a view, it does not own its elmts