A common object to be contained by.
More...
#include <Material.h>
◆ Material() [1/4]
| Trk::Material::Material |
( |
| ) |
|
|
inline |
◆ Material() [2/4]
| Trk::Material::Material |
( |
float | iX0, |
|
|
float | iL0, |
|
|
float | iA, |
|
|
float | iZ, |
|
|
float | iRho, |
|
|
float | idEdX = 0., |
|
|
MaterialComposition * | mc = nullptr ) |
|
inline |
Constructor with arguments.
Definition at line 141 of file Material.h.
150 {
151
152
153
155 zOaTr = iA > 0 ? iZ / iA * iRho : 0.;
156 }
#define CXXUTILS_TRAPPING_FP
◆ Material() [3/4]
| Trk::Material::Material |
( |
const Material & | amc | ) |
|
|
inline |
Copy Constructor.
Definition at line 159 of file Material.h.
167 composition(amc.composition ?
new MaterialComposition(*amc.composition)
168 : nullptr) {}
◆ Material() [4/4]
| Trk::Material::Material |
( |
Material && | amc | ) |
|
|
inline |
Move Constructor.
Definition at line 171 of file Material.h.
180 amc.composition = nullptr;
181 }
◆ ~Material()
| virtual Trk::Material::~Material |
( |
| ) |
|
|
inlinevirtual |
Destructor - delete the composition if there.
Definition at line 184 of file Material.h.
◆ averageZ()
| float Trk::Material::averageZ |
( |
| ) |
const |
|
inline |
◆ operator=() [1/2]
Assignment operator.
Definition at line 189 of file Material.h.
189 {
190 if (this != &amc) {
200 amc.composition ? new MaterialComposition(*amc.composition) : nullptr;
201 }
202 return (*this);
203 }
◆ operator=() [2/2]
Move Assignment operator.
Definition at line 206 of file Material.h.
206 {
216 }
218 amc.composition = nullptr;
219 return *this;
220 }
◆ scale()
| std::unique_ptr< Material > Trk::Material::scale |
( |
float | sf | ) |
const |
|
inline |
scaling method
Definition at line 240 of file Material.h.
240 {
241
242
243
245 return std::make_unique<Material>(
X0 / sf,
L0 / sf, sf *
A, sf *
Z, sf *
rho);
246}
◆ toString()
| std::string Trk::Material::toString |
( |
| ) |
const |
|
inline |
spit out as a string
Definition at line 231 of file Material.h.
231 {
232 std::ostringstream sout;
233 sout << std::setiosflags(std::ios::fixed) << std::setprecision(4);
234 sout <<
"(" <<
X0 <<
" | " <<
L0 <<
" | " <<
A <<
" | " <<
Z <<
" | " <<
rho
235 << ")";
236 return sout.str();
237 }
◆ x0()
| float Trk::Material::x0 |
( |
| ) |
const |
|
inline |
Definition at line 227 of file Material.h.
227{ return (*this).X0; }
◆ zOverAtimesRho()
| float Trk::Material::zOverAtimesRho |
( |
| ) |
const |
|
inline |
access to members
Definition at line 226 of file Material.h.
226{ return (*this).zOaTr; }
◆ composition
◆ dEdX
| float Trk::Material::dEdX |
◆ L0
◆ rho
◆ X0
◆ zOaTr
| float Trk::Material::zOaTr |
The documentation for this class was generated from the following file: