|
ACTS
Experiment-independent tracking
|
The portal shell of a volume is the set of portals that describes connections "outside" of the volume. More...
#include <Acts/Geometry/PortalShell.hpp>
Public Member Functions | |
| 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 void | fill (TrackingVolume &volume)=0 |
Fill the open slots of the shell with a TrivialPortalLink to the given volume. | |
| 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. | |
The portal shell of a volume is the set of portals that describes connections "outside" of the volume.
Which boundary surfaces of a volume are included in the shell depends on the volume. Portal shells are only used during geometry construction, and are not part of the final geometry description.
This class is the base class for all portal shells
|
virtualdefault |
Virtual destructor.
|
pure virtual |
Instruct the shell to register the portals with the volume, handing over shared ownership in the process.
CylinerStackPortalShell register portals to the correct volumes. Implemented in Acts::CuboidStackPortalShell, Acts::CylinderStackPortalShell, Acts::SingleCuboidPortalShell, Acts::SingleCylinderPortalShell, Acts::SingleDiamondPortalShell, and Acts::SingleTrapezoidPortalShell.
|
pure virtual |
Fill the open slots of the shell with a TrivialPortalLink to the given volume.
| volume | The volume to connect |
Implemented in Acts::CuboidPortalShell, Acts::CylinderPortalShell, Acts::DiamondPortalShell, and Acts::TrapezoidPortalShell.
|
pure virtual |
Check if a portal is valid, e.g.
if non of the portals has two unconnected sides.
Implemented in Acts::CuboidStackPortalShell, Acts::CylinderStackPortalShell, Acts::SingleCuboidPortalShell, Acts::SingleCylinderPortalShell, Acts::SingleDiamondPortalShell, and Acts::SingleTrapezoidPortalShell.
|
pure virtual |
Get a label for the portal shell for debugging purposes.
Implemented in Acts::CuboidStackPortalShell, Acts::CylinderStackPortalShell, Acts::SingleCuboidPortalShell, Acts::SingleCylinderPortalShell, Acts::SingleDiamondPortalShell, and Acts::SingleTrapezoidPortalShell.
|
pure virtual |
Get the number of portals in the shell.
This number depends on the volume type
Implemented in Acts::CuboidStackPortalShell, Acts::CylinderStackPortalShell, Acts::SingleCuboidPortalShell, Acts::SingleCylinderPortalShell, Acts::SingleDiamondPortalShell, and Acts::SingleTrapezoidPortalShell.