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.
 
HomogeneousSurfaceMaterial & operator= (const HomogeneousSurfaceMaterial &hsm)=default
 
HomogeneousSurfaceMaterial & operator= (HomogeneousSurfaceMaterial &&hsm)=default
 
HomogeneousSurfaceMaterial & operator*= (double scale) final
 
bool operator== (const HomogeneousSurfaceMaterial &hsm) const
 
const MaterialSlab & materialSlab (const Vector2D &lp) const final
 
 
const MaterialSlab & materialSlab (const Vector3D &gp) const final
 
 
const MaterialSlab & materialSlab (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: