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

#include <acts/blob/master/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 MaterialProperties &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 MaterialPropertiesmaterialProperties (const Vector2D &lp) const final
 
 
const MaterialPropertiesmaterialProperties (const Vector3D &gp) const final
 
 
const MaterialPropertiesmaterialProperties (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
 
MaterialProperties materialProperties (const Vector2D &lp, NavigationDirection pDir, MaterialUpdateStage mStage) const
 
MaterialProperties materialProperties (const Vector3D &gp, NavigationDirection pDir, MaterialUpdateStage mStage) const
 

Private Attributes

MaterialProperties m_fullMaterial = MaterialProperties()
 The five different MaterialProperties.
 

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 MaterialProperties full,
double  splitFactor = 1. 
)

Explicit constructor

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

Definition at line 12 of file HomogeneousSurfaceMaterial.cpp.

View newest version in sPHENIX GitHub at line 12 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 MaterialProperties & Acts::HomogeneousSurfaceMaterial::materialProperties ( const Vector2D lp) const
inlinefinalvirtual

Note
the input parameter is ignored

Implements Acts::ISurfaceMaterial.

Definition at line 104 of file HomogeneousSurfaceMaterial.hpp.

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

References m_fullMaterial.

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

+ Here is the caller graph for this function:

const MaterialProperties & Acts::HomogeneousSurfaceMaterial::materialProperties ( const Vector3D gp) const
inlinefinalvirtual

Note
the input parameter is ignored

Implements Acts::ISurfaceMaterial.

Definition at line 109 of file HomogeneousSurfaceMaterial.hpp.

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

References m_fullMaterial.

const MaterialProperties & Acts::HomogeneousSurfaceMaterial::materialProperties ( 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 114 of file HomogeneousSurfaceMaterial.hpp.

View newest version in sPHENIX GitHub at line 114 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 16 of file HomogeneousSurfaceMaterial.cpp.

View newest version in sPHENIX GitHub at line 16 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 119 of file HomogeneousSurfaceMaterial.hpp.

View newest version in sPHENIX GitHub at line 119 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 22 of file HomogeneousSurfaceMaterial.cpp.

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

Member Data Documentation

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

The five different MaterialProperties.

Definition at line 101 of file HomogeneousSurfaceMaterial.hpp.

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

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


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