ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
Acts::ProtoSurfaceMaterialT< BinningType > Class Template Reference

proxy to SurfaceMaterial hand over BinUtility or other suitable binning description More...

#include <Acts/Material/ProtoSurfaceMaterial.hpp>

Inheritance diagram for Acts::ProtoSurfaceMaterialT< BinningType >:
[legend]
Collaboration diagram for Acts::ProtoSurfaceMaterialT< BinningType >:
[legend]

Public Member Functions

 ProtoSurfaceMaterialT ()=default
 Constructor without binningType - homogeneous material.
 ProtoSurfaceMaterialT (const BinningType &binning, MappingType mappingType=MappingType::Default)
 Constructor with BinningType.
 ProtoSurfaceMaterialT (const ProtoSurfaceMaterialT< BinningType > &smproxy)=default
 Copy constructor.
 ProtoSurfaceMaterialT (ProtoSurfaceMaterialT< BinningType > &&smproxy) noexcept=default
 Copy move constructor.
 ~ProtoSurfaceMaterialT () override=default
 Destructor.
const BinningTypebinning () const
 Return the BinUtility.
const MaterialSlabmaterialSlab (const Vector2 &) const final
 Return method for full material description of the Surface - from local coordinates.
virtual MaterialSlab materialSlab (const Vector2 &lp, Direction pDir, MaterialUpdateMode mode) const
 Return method for fully scaled material description of the Surface.
const MaterialSlabmaterialSlab (const Vector3 &) const final
 Return method for full material description of the Surface - from the global coordinates.
virtual MaterialSlab materialSlab (const Vector3 &gp, Direction pDir, MaterialUpdateMode mode) const
 Return method for full material description of the Surface.
ProtoSurfaceMaterialT< BinningType > & operator= (const ProtoSurfaceMaterialT< BinningType > &smproxy)=default
 Assignment operator.
ProtoSurfaceMaterialT< BinningType > & operator= (ProtoSurfaceMaterialT< BinningType > &&smproxy) noexcept=default
 Assignment move operator.
ProtoSurfaceMaterialT< BinningType > & scale (double) final
 Scale operation - dummy implementation.
std::ostream & toStream (std::ostream &sl) const final
 Output Method for std::ostream, to be overloaded by child classes.
Public Member Functions inherited from Acts::ISurfaceMaterial
 ISurfaceMaterial ()=default
 Constructor.
 ISurfaceMaterial (double splitFactor)
 Constructor.
 ISurfaceMaterial (double splitFactor, MappingType mappingType)
 Constructor.
virtual ~ISurfaceMaterial ()=default
 Destructor.
double factor (Direction pDir, MaterialUpdateMode mode) const
 Update pre factor.
MappingType mappingType () const
 Return the type of surface material mapping.
std::string toString () const
 output into a string

Additional Inherited Members

Protected Attributes inherited from Acts::ISurfaceMaterial
MappingType m_mappingType {MappingType::Default}
 Use the default mapping type by default.
double m_splitFactor {1.}
 the split factor in favour of oppositePre

Detailed Description

template<typename BinningType>
class Acts::ProtoSurfaceMaterialT< BinningType >

proxy to SurfaceMaterial hand over BinUtility or other suitable binning description

The ProtoSurfaceMaterial class acts as a proxy to the SurfaceMaterial to mark the layers and surfaces on which the material should be mapped on at construction time of the geometry and to hand over the granularity of of the material map with the bin Utility.

Constructor & Destructor Documentation

◆ ProtoSurfaceMaterialT() [1/4]

template<typename BinningType>
Acts::ProtoSurfaceMaterialT< BinningType >::ProtoSurfaceMaterialT ( )
default

Constructor without binningType - homogeneous material.

◆ ProtoSurfaceMaterialT() [2/4]

template<typename BinningType>
Acts::ProtoSurfaceMaterialT< BinningType >::ProtoSurfaceMaterialT ( const BinningType & binning,
MappingType mappingType = MappingType::Default )
explicit

Constructor with BinningType.

Parameters
binninga binning description for the material map binning
mappingTypeis the type of surface mapping associated to the surface

◆ ProtoSurfaceMaterialT() [3/4]

template<typename BinningType>
Acts::ProtoSurfaceMaterialT< BinningType >::ProtoSurfaceMaterialT ( const ProtoSurfaceMaterialT< BinningType > & smproxy)
default

Copy constructor.

Parameters
smproxyThe source proxy

◆ ProtoSurfaceMaterialT() [4/4]

template<typename BinningType>
Acts::ProtoSurfaceMaterialT< BinningType >::ProtoSurfaceMaterialT ( ProtoSurfaceMaterialT< BinningType > && smproxy)
defaultnoexcept

Copy move constructor.

Parameters
smproxyThe source proxy

◆ ~ProtoSurfaceMaterialT()

template<typename BinningType>
Acts::ProtoSurfaceMaterialT< BinningType >::~ProtoSurfaceMaterialT ( )
overridedefault

Destructor.

Member Function Documentation

◆ binning()

template<typename BinningType>
const BinningType & Acts::ProtoSurfaceMaterialT< BinningType >::binning ( ) const

Return the BinUtility.

◆ materialSlab() [1/4]

template<typename BinningType>
const MaterialSlab & Acts::ProtoSurfaceMaterialT< BinningType >::materialSlab ( const Vector2 & ) const
finalvirtual

Return method for full material description of the Surface - from local coordinates.

Returns
will return dummy material

Implements Acts::ISurfaceMaterial.

◆ materialSlab() [2/4]

template<typename BinningType>
virtual MaterialSlab Acts::ISurfaceMaterial::materialSlab ( const Vector2 & lp,
Direction pDir,
MaterialUpdateMode mode ) const
virtual

Return method for fully scaled material description of the Surface.

  • from local coordinate on the surface
Parameters
lpis the local position used for the (eventual) lookup
pDiris the positive direction through the surface
modeis the material update directive
Returns
MaterialSlab

Reimplemented from Acts::ISurfaceMaterial.

◆ materialSlab() [3/4]

template<typename BinningType>
const MaterialSlab & Acts::ProtoSurfaceMaterialT< BinningType >::materialSlab ( const Vector3 & ) const
finalvirtual

Return method for full material description of the Surface - from the global coordinates.

Returns
will return dummy material

Implements Acts::ISurfaceMaterial.

◆ materialSlab() [4/4]

template<typename BinningType>
virtual MaterialSlab Acts::ISurfaceMaterial::materialSlab ( const Vector3 & gp,
Direction pDir,
MaterialUpdateMode mode ) const
virtual

Return method for full material description of the Surface.

  • from the global coordinates
Parameters
gpis the global position used for the (eventual) lookup
pDiris the positive direction through the surface
modeis the material update directive
Returns
MaterialSlab

Reimplemented from Acts::ISurfaceMaterial.

◆ operator=() [1/2]

template<typename BinningType>
ProtoSurfaceMaterialT< BinningType > & Acts::ProtoSurfaceMaterialT< BinningType >::operator= ( const ProtoSurfaceMaterialT< BinningType > & smproxy)
default

Assignment operator.

Parameters
smproxyThe source proxy

◆ operator=() [2/2]

template<typename BinningType>
ProtoSurfaceMaterialT< BinningType > & Acts::ProtoSurfaceMaterialT< BinningType >::operator= ( ProtoSurfaceMaterialT< BinningType > && smproxy)
defaultnoexcept

Assignment move operator.

Parameters
smproxyThe source proxy

◆ scale()

template<typename BinningType>
ProtoSurfaceMaterialT< BinningType > & Acts::ProtoSurfaceMaterialT< BinningType >::scale ( double )
finalvirtual

Scale operation - dummy implementation.

Implements Acts::ISurfaceMaterial.

◆ toStream()

template<typename BinningType>
std::ostream & Acts::ProtoSurfaceMaterialT< BinningType >::toStream ( std::ostream & sl) const
finalvirtual

Output Method for std::ostream, to be overloaded by child classes.

Parameters
slis the output stream

Implements Acts::ISurfaceMaterial.