ATLAS Offline Software
Loading...
Searching...
No Matches
RecursiveGeometryProcessor.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
6// RecursiveGeometryProcessor.h, (c) ATLAS Detector software
8
9#ifndef TRKDETDESCRTOOLS_RECURSIVEGEOMETRYPROCESSOR_H
10#define TRKDETDESCRTOOLS_RECURSIVEGEOMETRYPROCESSOR_H
11
12// Trk
14// Gaudi & Athena
16
18
19namespace Trk {
20
21 class TrackingGeometry;
22 class TrackingVolume;
23 class Volume;
24 class Layer;
25 class Surface;
26
37
39 public AthAlgTool, virtual public IGeometryProcessor {
40
41 public:
43 RecursiveGeometryProcessor(const std::string&,const std::string&,const IInterface*);
44
47
49 StatusCode initialize();
50
52 StatusCode finalize();
53
55 virtual StatusCode process(TrackingGeometry& tgeo) const;
56
58 virtual StatusCode process(TrackingVolume& tvol, size_t level = 0) const;
59
61 virtual StatusCode process(Layer& lay, size_t level = 0) const;
62
64 virtual StatusCode process(Surface& surf, size_t level = 0) const;
65
66 protected:
68
70 virtual StatusCode processNode(const TrackingVolume& tvol, size_t level = 0) const;
71
73 virtual StatusCode processNode(const Layer& lay, size_t level = 0) const;
74
76 virtual StatusCode processNode(const Surface& surf, size_t level = 0) const;
77
78
79
80 };
81
82} // end of namespace
83
84#endif // TRKDETDESCRTOOLS_RECURSIVEGEOMETRYPROCESSOR_H
Define macros for attributes used to control the static checker.
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Interface class IGeometryProcessors.
Base Class for a Detector Layer in the Tracking realm.
Definition Layer.h:72
RecursiveGeometryProcessor(const std::string &, const std::string &, const IInterface *)
Constructor.
virtual ~RecursiveGeometryProcessor()
Destructor.
StatusCode finalize()
AlgTool finalize method.
virtual StatusCode processNode(const TrackingVolume &tvol, size_t level=0) const
Dedicated action for the different processors.
Abstract Base Class for tracking surfaces.
The TrackingGeometry class is the owner of the constructed TrackingVolumes.
Full Volume description used in Tracking, it inherits from Volume to get the geometrical structure,...
Base class for all volumes inside the tracking realm, it defines the interface for inherited Volume c...
Definition Volume.h:36
const std::string process
Ensure that the ATLAS eigen extensions are properly loaded.
void initialize()