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

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

#include <Acts/Geometry/TrapezoidPortalShell.hpp>

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

Public Types

using Face = TrapezoidVolumeBounds::Face
 Type alias for trapezoid volume 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 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 trapezoid shaped portal shells, e.g.

shells for trapezoid volumes

Member Typedef Documentation

◆ Face

Type alias for trapezoid volume face enumeration.

Member Function Documentation

◆ fill()

void Acts::TrapezoidPortalShell::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.

◆ portal()

virtual std::shared_ptr< Portal > Acts::TrapezoidPortalShell::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::SingleTrapezoidPortalShell.

◆ setPortal()

virtual void Acts::TrapezoidPortalShell::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::SingleTrapezoidPortalShell.