ATLAS Offline Software
Loading...
Searching...
No Matches
MergeCalibHitsTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef MCTRUTHSIMALGS_MERGECALIBHITSTOOL_H
6#define MCTRUTHSIMALGS_MERGECALIBHITSTOOL_H
7
9
10#include "GaudiKernel/ServiceHandle.h"
12
13#include <vector>
14#include <string>
15
17
26public:
27 MergeCalibHitsTool(const std::string& type,
28 const std::string& name,
29 const IInterface* parent);
31 virtual StatusCode initialize() override final;
34 virtual StatusCode prepareEvent(const EventContext& ctx, unsigned int nInputEvents) override final;
37 virtual StatusCode mergeEvent(const EventContext& ctx) override final;
40 virtual StatusCode processBunchXing(int bunchXing,
41 SubEventIterator bSubEvents,
42 SubEventIterator eSubEvents) override final;
45 // virtual bool toProcess(int bunchXing) const;
46
50 virtual StatusCode processAllSubEvents(const EventContext& ctx) override final;
51
52private:
53 Gaudi::Property<bool> m_oldFormat{this, "OldFormat", false, ""};
54 ServiceHandle<PileUpMergeSvc> m_pMergeSvc{this, "PileUpMergeSvc", "PileUpMergeSvc", ""};
55 bool m_firstSubEvent{true};
56 std::vector<CaloCalibrationHitContainer*> m_outputContainers;//FIXME hardcoded size
57 std::vector<std::string> m_CalibrationHitContainer;
58};
59#endif //MCTRUTHSIMALGS_MERGECALIBHITSTOOL_H
std::vector< xAOD::EventInfo::SubEvent >::const_iterator SubEventIterator
Definition IPileUpTool.h:22
the preferred mechanism to access information from the different event stores in a pileup job.
helper base class IPileUpTool::toProcess().
virtual StatusCode prepareEvent(const EventContext &ctx, unsigned int nInputEvents) override final
called before the subevts loop.
ServiceHandle< PileUpMergeSvc > m_pMergeSvc
Gaudi::Property< bool > m_oldFormat
virtual StatusCode mergeEvent(const EventContext &ctx) override final
called at the end of the subevts loop.
virtual StatusCode initialize() override final
called before the event loop
virtual StatusCode processBunchXing(int bunchXing, SubEventIterator bSubEvents, SubEventIterator eSubEvents) override final
called for each active bunch-crossing to process current SubEvents bunchXing is in ns
virtual StatusCode processAllSubEvents(const EventContext &ctx) override final
return false if not interested in certain xing times (in ns) implemented by default in PileUpToolBase...
std::vector< std::string > m_CalibrationHitContainer
std::vector< CaloCalibrationHitContainer * > m_outputContainers
MergeCalibHitsTool(const std::string &type, const std::string &name, const IInterface *parent)
PileUpToolBase(const std::string &type, const std::string &name, const IInterface *parent)