5#ifndef ISF_GEANT4COMMONTOOLS_ENTRYLAYERTOOL_H
6#define ISF_GEANT4COMMONTOOLS_ENTRYLAYERTOOL_H 1
9#include "GaudiKernel/ToolHandle.h"
10#include "GaudiKernel/ServiceHandle.h"
44 EntryLayerTool(
const std::string& t,
const std::string& n,
const IInterface* p );
50 virtual StatusCode
initialize() override final;
AtlasHitsVector< TrackRecord > TrackRecordCollection
std::string m_volumeName[ISF::fNumAtlasEntryLayers]
virtual StatusCode initialize() override final
Athena algtool's Hooks.
virtual void setupEvent() override final
ServiceHandle< ISF::IGeoIDSvc > m_geoIDSvc
GeoIDSvc will be used to determine the entry layer surface, the particle is on.
std::string m_SGName[ISF::fNumAtlasEntryLayers]
size_t m_numParticleFilters
virtual ISF::EntryLayer registerParticle(const ISF::ISFParticle &particle, ISF::EntryLayer entryLayer) override final
Add the given particle to the corresponding Entry/Exit layer if applicable.
TrackRecordCollection * setupSGCollection(const std::string &name)
used to setup a TrackRecordCollection on storegate
EntryLayerTool(const std::string &t, const std::string &n, const IInterface *p)
Constructor with parameters.
virtual bool passesFilters(const ISFParticle &particle) override final
Check if given particle passes the EntryLayer filters.
virtual ISF::EntryLayer identifyEntryLayer(const ISFParticle &particle) override final
Identify the corresponding entry layer for the given particle (may return ISF::fUnsetEntryLayer if pa...
virtual StatusCode registerTrackRecordCollection(TrackRecordCollection *collection, EntryLayer layer) override final
Register the TrackRecordCollection pointer for a layer.
TrackRecordCollection * m_collection[ISF::fNumAtlasEntryLayers]
The entry layer collections.
ParticleFilterArray m_particleFilterHandle
Array of filters to decide whether a particle is added to the Entry/Exit layer.
ISF::IParticleFilter ** m_particleFilter
ISF::IGeoIDSvc * m_geoIDSvcQuick
virtual ~EntryLayerTool()=default
Destructor.
The interface to chose between the sub geometry services, realized as an AlgTool since it does not ha...
The generic ISF particle definition,.
ToolHandleArray< ISF::IParticleFilter > ParticleFilterArray
use this typedef to make the code structure more clean
EntryLayer
Identifiers for the TrackRecordCollections on the boundaries between CaloEntry: Inner Detector - Calo...