ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
Acts::CuboidPortalShell Class Referenceabstract

Base class for cuboid shaped portal shells, e.g. More...

#include <Acts/Geometry/CuboidPortalShell.hpp>

Inheritance diagram for Acts::CuboidPortalShell:
[legend]
Collaboration diagram for Acts::CuboidPortalShell:
[legend]

Public Types

using Face = CuboidVolumeBounds::Face
 Type alias for cuboid volume bounds face enumeration.

Public Member Functions

void fill (TrackingVolume &volume) override
 Fill the open slots of the shell with a TrivialPortalLink to the given volume.
virtual const Transform3localToGlobalTransform (const GeometryContext &gctx) const =0
 Get the transformation matrix for this cuboid portal shell.
virtual std::shared_ptr< Portalportal (Face face)=0
 Retrieve a shared_ptr for the portal associated to the given face.
virtual void setPortal (std::shared_ptr< Portal > portal, Face face)=0
 Set the portal associated to the given face.
Public Member Functions inherited from Acts::PortalShellBase
virtual ~PortalShellBase ()=default
 Virtual destructor.
virtual void applyToVolume ()=0
 Instruct the shell to register the portals with the volume, handing over shared ownership in the process.
virtual bool isValid () const =0
 Check if a portal is valid, e.g.
virtual std::string label () const =0
 Get a label for the portal shell for debugging purposes.
virtual std::size_t size () const =0
 Get the number of portals in the shell.

Detailed Description

Base class for cuboid shaped portal shells, e.g.

shells for cuboid volumes

Member Typedef Documentation

◆ Face

Type alias for cuboid volume bounds face enumeration.

Member Function Documentation

◆ fill()

void Acts::CuboidPortalShell::fill ( TrackingVolume & volume)
overridevirtual

Fill the open slots of the shell with a TrivialPortalLink to the given volume.

Parameters
volumeThe volume to connect

Implements Acts::PortalShellBase.

◆ localToGlobalTransform()

virtual const Transform3 & Acts::CuboidPortalShell::localToGlobalTransform ( const GeometryContext & gctx) const
pure virtual

Get the transformation matrix for this cuboid portal shell.

Returns
Reference to the transformation matrix

Implemented in Acts::CuboidStackPortalShell, and Acts::SingleCuboidPortalShell.

◆ portal()

virtual std::shared_ptr< Portal > Acts::CuboidPortalShell::portal ( Face face)
pure virtual

Retrieve a shared_ptr for the portal associated to the given face.

Can be nullptr if unset.

Parameters
faceThe face to retrieve the portal for
Returns
The portal associated to the face

Implemented in Acts::CuboidStackPortalShell, and Acts::SingleCuboidPortalShell.

◆ setPortal()

virtual void Acts::CuboidPortalShell::setPortal ( std::shared_ptr< Portal > portal,
Face face )
pure virtual

Set the portal associated to the given face.

Parameters
portalThe portal to set
faceThe face to set the portal

Implemented in Acts::CuboidStackPortalShell, and Acts::SingleCuboidPortalShell.