ATLAS Offline Software
Loading...
Searching...
No Matches
ITrackingVolumesSvc.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
6// ITrackingVolumesSvc.h, (c) ATLAS Detector software
8
9#ifndef TRKDETDESCRINTERFACES_ITRACKINGVOLUMESSERVICE_H
10#define TRKDETDESCRINTERFACES_ITRACKINGVOLUMESSERVICE_H
11
12// Include Files
13#include "GaudiKernel/IInterface.h"
14#include "GaudiKernel/StatusCode.h"
15
16
17namespace Trk {
18
19 class Volume;
20
30 class ITrackingVolumesSvc : virtual public IInterface {
31
32 public:
35
44
46 virtual const Trk::Volume& volume(const TrackingVolumeIdentifier& volumeId) const = 0;
47
49 virtual const std::string& volumeName(const TrackingVolumeIdentifier& volumeId) const = 0;
50
51
52 };
53
54}
55
56#endif
57
Service which is used to create volumes enclosing various parts of ATLAS, and which can be used e....
virtual const std::string & volumeName(const TrackingVolumeIdentifier &volumeId) const =0
Returns the name of the TrackingVolumes built with this Svc.
TrackingVolumeIdentifier
Enum to identify the various "volumes" which exist.
@ MuonSpectrometerExitLayer
Tracking Volume which defines the outer surfaces of the MS.
@ CalorimeterEntryLayer
Tracking Volume which defines the entrance srufaces of the calorimeter.
@ MuonSpectrometerEntryLayer
Tracking Volume which defines the entrance surfaces of the MS.
DeclareInterfaceID(ITrackingVolumesSvc, 1, 0)
Creates the InterfaceID and interfaceID() method.
virtual const Trk::Volume & volume(const TrackingVolumeIdentifier &volumeId) const =0
Provide the TrackingVolumes.
Base class for all volumes inside the tracking realm, it defines the interface for inherited Volume c...
Definition Volume.h:36
Ensure that the ATLAS eigen extensions are properly loaded.