ATLAS Offline Software
Loading...
Searching...
No Matches
IEntryLayerTool.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 ISF_INTERFACES_IENTRYLAYERTOOL_H
6#define ISF_INTERFACES_IENTRYLAYERTOOL_H 1
7
8// Gaudi
9#include "GaudiKernel/IAlgTool.h"
10
11// ISF
13
15
16namespace ISF {
17
18 class ISFParticle;
19
25
26 class IEntryLayerTool : virtual public IAlgTool {
27 public:
28
30 virtual ~IEntryLayerTool(){}
31
34
36 virtual bool passesFilters( const ISFParticle& particle) = 0;
37
40 virtual ISF::EntryLayer identifyEntryLayer( const ISFParticle& particle) = 0;
41
45
47 virtual StatusCode registerTrackRecordCollection(TrackRecordCollection* collection, EntryLayer layer) = 0;
48
49 virtual void setupEvent() = 0;
50 };
51
52} // end of namespace
53
54#endif // ISF_INTERFACES_IENTRYLAYERTOOL_H
AtlasHitsVector< TrackRecord > TrackRecordCollection
virtual ISF::EntryLayer registerParticle(const ISFParticle &particle, EntryLayer layer=fUnsetEntryLayer)=0
Add the given particle to the corresponding Entry/Exit layer if applicable.
virtual StatusCode registerTrackRecordCollection(TrackRecordCollection *collection, EntryLayer layer)=0
Register the TrackRecordCollection pointer for a layer.
virtual bool passesFilters(const ISFParticle &particle)=0
Check if given particle passes the EntryLayer filters.
virtual ISF::EntryLayer identifyEntryLayer(const ISFParticle &particle)=0
Identify the corresponding entry layer for the given particle (may return ISF::fUnsetEntryLayere if p...
virtual ~IEntryLayerTool()
Virtual destructor.
DeclareInterfaceID(IEntryLayerTool, 1, 0)
Creates the InterfaceID and interfaceID() method.
virtual void setupEvent()=0
The generic ISF particle definition,.
Definition ISFParticle.h:42
ISFParticleOrderedQueue.
EntryLayer
Identifiers for the TrackRecordCollections on the boundaries between CaloEntry: Inner Detector - Calo...
Definition EntryLayer.h:31
@ fUnsetEntryLayer
Definition EntryLayer.h:33