ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonPhaseII
MuonDetDescr
MuonGeoModelR4
MuonGeoModelR4
IMuonGeoUtilityTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
#ifndef MUONGEOMODELR4_IMUONGEOUTILITYTOOL_H
5
#define MUONGEOMODELR4_IMUONGEOUTILITYTOOL_H
6
7
8
#include "
MuonReadoutGeometryR4/MuonDetectorDefs.h
"
10
11
#include "GeoModelKernel/GeoFullPhysVol.h"
12
#include "GeoModelKernel/GeoPhysVol.h"
13
#include "GeoModelKernel/GeoShape.h"
14
#include "GeoModelKernel/GeoSimplePolygonBrep.h"
15
#include "GeoModelKernel/GeoAlignableTransform.h"
16
#include "GeoModelHelpers/getChildNodesWithTrf.h"
17
#include "GaudiKernel/IAlgTool.h"
18
19
class
GeoShapeUnion;
20
21
namespace
MuonGMR4
{
22
23
class
IMuonGeoUtilityTool
:
virtual
public
IAlgTool {
24
public
:
26
DeclareInterfaceID
(
IMuonGeoUtilityTool
, 1, 0);
27
31
virtual
const
GeoAlignableTransform*
findAlignableTransform
(
const
PVConstLink& physVol)
const
= 0;
35
virtual
const
GeoShape*
extractShape
(
const
PVConstLink& physVol)
const
= 0;
39
virtual
const
GeoShape*
extractShape
(
const
GeoShape* inShape)
const
= 0;
40
43
using
physVolWithTrans
= GeoChildNodeWithTrf;
46
virtual
std::vector<physVolWithTrans>
findAllLeafNodesByName
(
const
PVConstLink& physVol,
const
std::string& volumeName)
const
= 0;
48
virtual
std::vector<const GeoShape*>
getComponents
(
const
GeoShape* booleanShape)
const
= 0;
49
51
virtual
std::string
dumpShape
(
const
GeoShape* inShape)
const
= 0;
53
virtual
std::string
dumpVolume
(
const
PVConstLink& physVol)
const
= 0;
55
virtual
std::vector<Amg::Vector2D>
polygonEdges
(
const
GeoSimplePolygonBrep& polygon)
const
= 0;
56
58
virtual
std::vector<Amg::Vector3D>
shapeEdges
(
const
GeoShape* shape,
59
const
Acts::Transform3& volTrf)
const
= 0;
60
61
62
};
63
64
}
65
#endif
MuonDetectorDefs.h
MuonGMR4::IMuonGeoUtilityTool
Definition
IMuonGeoUtilityTool.h:23
MuonGMR4::IMuonGeoUtilityTool::getComponents
virtual std::vector< const GeoShape * > getComponents(const GeoShape *booleanShape) const =0
Splits a boolean shape into its building blocks.
MuonGMR4::IMuonGeoUtilityTool::extractShape
virtual const GeoShape * extractShape(const GeoShape *inShape) const =0
Navigates through the shape hiarchy to return the first shape which is neither a shift or in case of ...
MuonGMR4::IMuonGeoUtilityTool::DeclareInterfaceID
DeclareInterfaceID(IMuonGeoUtilityTool, 1, 0)
Gaudi interface ID.
MuonGMR4::IMuonGeoUtilityTool::findAllLeafNodesByName
virtual std::vector< physVolWithTrans > findAllLeafNodesByName(const PVConstLink &physVol, const std::string &volumeName) const =0
Searches through all child volumes and collects the nodes where the logical volumes have the requeste...
MuonGMR4::IMuonGeoUtilityTool::dumpShape
virtual std::string dumpShape(const GeoShape *inShape) const =0
MuonGMR4::IMuonGeoUtilityTool::extractShape
virtual const GeoShape * extractShape(const PVConstLink &physVol) const =0
Navigates through the volume shape hiearchy to return the first shape which is neither a shift or in ...
MuonGMR4::IMuonGeoUtilityTool::dumpVolume
virtual std::string dumpVolume(const PVConstLink &physVol) const =0
MuonGMR4::IMuonGeoUtilityTool::shapeEdges
virtual std::vector< Amg::Vector3D > shapeEdges(const GeoShape *shape, const Acts::Transform3 &volTrf) const =0
Returns the edge points of the polygon like GeoShapes.
MuonGMR4::IMuonGeoUtilityTool::polygonEdges
virtual std::vector< Amg::Vector2D > polygonEdges(const GeoSimplePolygonBrep &polygon) const =0
Transforms the vertices of the Polygon shape into a std::vector consisting of Amg::Vector2D objects.
MuonGMR4::IMuonGeoUtilityTool::physVolWithTrans
GeoChildNodeWithTrf physVolWithTrans
Helper struct to cache a PhysVolume pointer together with the transformation to go from the volume to...
Definition
IMuonGeoUtilityTool.h:43
MuonGMR4::IMuonGeoUtilityTool::findAlignableTransform
virtual const GeoAlignableTransform * findAlignableTransform(const PVConstLink &physVol) const =0
Returns the first alignable transform in the root subtree upstream the volume the volume must not be ...
MuonGMR4
The ReadoutGeomCnvAlg converts the Run4 Readout geometry build from the GeoModelXML into the legacy M...
Definition
MdtCalibInput.h:19
Generated on
for ATLAS Offline Software by
1.17.0