ATLAS Offline Software
Loading...
Searching...
No Matches
MergeGenericMuonSimHitCollTool.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 MCTRUTHSIMALGS_MERGEGENERICMUONSIMHITCOLLTOOL_H
6#define MCTRUTHSIMALGS_MERGEGENERICMUONSIMHITCOLLTOOL_H
7
9
11
12#include "Gaudi/Property.h"
13#include "GaudiKernel/ServiceHandle.h"
14
15#include <string>
16
17class PileUpMergeSvc;
26public:
27 MergeGenericMuonSimHitCollTool(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;
47 virtual StatusCode processAllSubEvents(const EventContext& ctx) override final;
48private:
50 virtual void processGenericMuonSimHitColl(const GenericMuonSimHitCollection *inputCollection, GenericMuonSimHitCollection *outputCollection, const double& timeOfBCID);
53 std::vector<GenericMuonSimHitCollection*> m_outputContainers;
54 StringArrayProperty m_SimHitContainerNamesProp;
55 std::vector<std::string> m_SimHitContainerNames;
56};
57#endif //MCTRUTHSIMALGS_MERGEGENERICMUONSIMHITCOLLTOOL_H
AtlasHitsVector< GenericMuonSimHit > GenericMuonSimHitCollection
std::vector< xAOD::EventInfo::SubEvent >::const_iterator SubEventIterator
Definition IPileUpTool.h:22
helper base class IPileUpTool::toProcess().
virtual StatusCode mergeEvent(const EventContext &ctx) override final
called at the end of the subevts loop.
virtual StatusCode processAllSubEvents(const EventContext &ctx) override final
return false if not interested in certain xing times (in ns) implemented by default in PileUpToolBase...
virtual StatusCode initialize() override final
called before the event loop
virtual StatusCode prepareEvent(const EventContext &ctx, unsigned int nInputEvents) override final
called before the subevts loop.
ServiceHandle< PileUpMergeSvc > m_pMergeSvc
std::vector< std::string > m_SimHitContainerNames
virtual void processGenericMuonSimHitColl(const GenericMuonSimHitCollection *inputCollection, GenericMuonSimHitCollection *outputCollection, const double &timeOfBCID)
share code between two approaches
MergeGenericMuonSimHitCollTool(const std::string &type, const std::string &name, const IInterface *parent)
std::vector< GenericMuonSimHitCollection * > m_outputContainers
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
the preferred mechanism to access information from the different event stores in a pileup job.
PileUpToolBase(const std::string &type, const std::string &name, const IInterface *parent)