EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::HomogeneousSurfaceMaterial Class Reference

#include <acts/blob/sPHENIX/Core/include/Acts/Material/HomogeneousSurfaceMaterial.hpp>

+ Inheritance diagram for Acts::HomogeneousSurfaceMaterial:
+ Collaboration diagram for Acts::HomogeneousSurfaceMaterial:

Public Member Functions

 HomogeneousSurfaceMaterial ()=default
 Default Constructor - defaulted.
 
 HomogeneousSurfaceMaterial (const MaterialSlab &full, double splitFactor=1.)
 
 HomogeneousSurfaceMaterial (const HomogeneousSurfaceMaterial &hsm)=default
 
 HomogeneousSurfaceMaterial (HomogeneousSurfaceMaterial &&hsm)=default
 
 ~HomogeneousSurfaceMaterial () override=default
 Destructor.
 
HomogeneousSurfaceMaterialoperator= (const HomogeneousSurfaceMaterial &hsm)=default
 
HomogeneousSurfaceMaterialoperator= (HomogeneousSurfaceMaterial &&hsm)=default
 
HomogeneousSurfaceMaterialoperator*= (double scale) final
 
bool operator== (const HomogeneousSurfaceMaterial &hsm) const
 
const MaterialSlabmaterialSlab (const Vector2D &lp) const final
 
 
const MaterialSlabmaterialSlab (const Vector3D &gp) const final
 
 
const MaterialSlabmaterialSlab (size_t ib0, size_t ib1) const final
 
 
std::ostream & toStream (std::ostream &sl) const final
 
- Public Member Functions inherited from Acts::ISurfaceMaterial
 ISurfaceMaterial ()=default
 Constructor.
 
 ISurfaceMaterial (double splitFactor)
 
virtual ~ISurfaceMaterial ()=default
 Destructor.
 
double factor (NavigationDirection pDir, MaterialUpdateStage mStage) const
 
MaterialSlab materialSlab (const Vector2D &lp, NavigationDirection pDir, MaterialUpdateStage mStage) const
 
MaterialSlab materialSlab (const Vector3D &gp, NavigationDirection pDir, MaterialUpdateStage mStage) const
 

Private Attributes

MaterialSlab m_fullMaterial = MaterialSlab()
 The five different MaterialSlab.
 

Additional Inherited Members

- Protected Attributes inherited from Acts::ISurfaceMaterial
double m_splitFactor {1.}
 the split factor in favour of oppositePre
 

Detailed Description

It extends the ISurfaceMaterial virutal base class to describe a simple homogeneous material on a surface

Definition at line 21 of file HomogeneousSurfaceMaterial.hpp.

View newest version in sPHENIX GitHub at line 21 of file HomogeneousSurfaceMaterial.hpp

Constructor & Destructor Documentation

Acts::HomogeneousSurfaceMaterial::HomogeneousSurfaceMaterial ( )
default

Default Constructor - defaulted.

Acts::HomogeneousSurfaceMaterial::HomogeneousSurfaceMaterial ( const MaterialSlab full,
double  splitFactor = 1. 
)

Explicit constructor

Parameters
fullare the full material properties
splitFactoris the split for pre/post update

Definition at line 13 of file HomogeneousSurfaceMaterial.cpp.

View newest version in sPHENIX GitHub at line 13 of file HomogeneousSurfaceMaterial.cpp

Acts::HomogeneousSurfaceMaterial::HomogeneousSurfaceMaterial ( const HomogeneousSurfaceMaterial hsm)
default

Copy Constructor

Parameters
hsmis the source material
Acts::HomogeneousSurfaceMaterial::HomogeneousSurfaceMaterial ( HomogeneousSurfaceMaterial &&  hsm)
default

Copy Move Constructor

Parameters
hsmis the source material
Acts::HomogeneousSurfaceMaterial::~HomogeneousSurfaceMaterial ( )
overridedefault

Destructor.

Member Function Documentation

const MaterialSlab & Acts::HomogeneousSurfaceMaterial::materialSlab ( const Vector2D lp) const
inlinefinalvirtual

Note
the input parameter is ignored

Implements Acts::ISurfaceMaterial.

Definition at line 102 of file HomogeneousSurfaceMaterial.hpp.

View newest version in sPHENIX GitHub at line 102 of file HomogeneousSurfaceMaterial.hpp

References m_fullMaterial.

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().

+ Here is the caller graph for this function:

const MaterialSlab & Acts::HomogeneousSurfaceMaterial::materialSlab ( const Vector3D gp) const
inlinefinalvirtual

Note
the input parameter is ignored

Implements Acts::ISurfaceMaterial.

Definition at line 107 of file HomogeneousSurfaceMaterial.hpp.

View newest version in sPHENIX GitHub at line 107 of file HomogeneousSurfaceMaterial.hpp

References m_fullMaterial.

const MaterialSlab & Acts::HomogeneousSurfaceMaterial::materialSlab ( size_t  ib0,
size_t  ib1 
) const
inlinefinalvirtual

Parameters
ib0The bin at local 0 for retrieving the material
ib1The bin at local 1 for retrieving the material
Note
the input parameter is ignored

Implements Acts::ISurfaceMaterial.

Definition at line 112 of file HomogeneousSurfaceMaterial.hpp.

View newest version in sPHENIX GitHub at line 112 of file HomogeneousSurfaceMaterial.hpp

References m_fullMaterial.

Acts::HomogeneousSurfaceMaterial & Acts::HomogeneousSurfaceMaterial::operator*= ( double  scale)
finalvirtual

Scale operator

  • it is effectively a thickness scaling
Parameters
scaleis the scale factor

Implements Acts::ISurfaceMaterial.

Definition at line 17 of file HomogeneousSurfaceMaterial.cpp.

View newest version in sPHENIX GitHub at line 17 of file HomogeneousSurfaceMaterial.cpp

HomogeneousSurfaceMaterial& Acts::HomogeneousSurfaceMaterial::operator= ( const HomogeneousSurfaceMaterial hsm)
default

Assignment operator

Parameters
hsmis the source material
HomogeneousSurfaceMaterial& Acts::HomogeneousSurfaceMaterial::operator= ( HomogeneousSurfaceMaterial &&  hsm)
default

Assignment Move operator

Parameters
hsmis the source material
bool Acts::HomogeneousSurfaceMaterial::operator== ( const HomogeneousSurfaceMaterial hsm) const
inline

Equality operator

Parameters
hsmis the source material

Definition at line 117 of file HomogeneousSurfaceMaterial.hpp.

View newest version in sPHENIX GitHub at line 117 of file HomogeneousSurfaceMaterial.hpp

References m_fullMaterial.

std::ostream & Acts::HomogeneousSurfaceMaterial::toStream ( std::ostream &  sl) const
finalvirtual

Output Method for std::ostream

Parameters
slThe outoput stream

Implements Acts::ISurfaceMaterial.

Definition at line 23 of file HomogeneousSurfaceMaterial.cpp.

View newest version in sPHENIX GitHub at line 23 of file HomogeneousSurfaceMaterial.cpp

Member Data Documentation

MaterialSlab Acts::HomogeneousSurfaceMaterial::m_fullMaterial = MaterialSlab()
private

The five different MaterialSlab.

Definition at line 99 of file HomogeneousSurfaceMaterial.hpp.

View newest version in sPHENIX GitHub at line 99 of file HomogeneousSurfaceMaterial.hpp

Referenced by materialSlab(), and operator==().


The documentation for this class was generated from the following files: