ATLAS Offline Software
Loading...
Searching...
No Matches
AGDDMixture Class Reference

#include <AGDDMixture.h>

Inheritance diagram for AGDDMixture:
Collaboration diagram for AGDDMixture:

Public Member Functions

 AGDDMixture (AGDDMaterialStore &ms, const std::string &, double)
void AddMaterial (AGDDMaterialStore &ms, const std::string &)
void Fraction (double)
int NComponents () const
AGDDSimpleMaterialMaterial (int i)
double Composition (int i) const
void RegisterToStore (AGDDMaterialStore &ms, AGDDSimpleMaterial *)
const std::string & GetName () const
double GetDensity () const
material_type GetMaterialType () const
void Created (bool b)
bool Extant () const
void * GetMaterial ()
void SetMaterial (void *mat)

Protected Attributes

std::string m_name
double m_density
bool m_created
material_type m_mType
void * m_theMaterial

Private Attributes

std::vector< AGDDSimpleMaterial * > m_theMaterials
std::vector< double > m_theComposition

Friends

std::ostream & operator<< (std::ostream &os, const AGDDMixture &obj)

Detailed Description

Definition at line 16 of file AGDDMixture.h.

Constructor & Destructor Documentation

◆ AGDDMixture()

AGDDMixture::AGDDMixture ( AGDDMaterialStore & ms,
const std::string & n,
double d )

Definition at line 25 of file AGDDMixture.cxx.

25 :
26 AGDDSimpleMaterial(ms,n,d)
27{
29}
@ Mixture
AGDDSimpleMaterial(AGDDMaterialStore &ms, const std::string &n, double d)

Member Function Documentation

◆ AddMaterial()

void AGDDMixture::AddMaterial ( AGDDMaterialStore & ms,
const std::string & el )

Definition at line 31 of file AGDDMixture.cxx.

32{
33 AGDDSimpleMaterial* material=ms.GetMaterial(el);
34 m_theMaterials.push_back(material);
35}
std::vector< AGDDSimpleMaterial * > m_theMaterials
Definition AGDDMixture.h:26

◆ Composition()

double AGDDMixture::Composition ( int i) const
inline

Definition at line 24 of file AGDDMixture.h.

24{return m_theComposition[i];}
std::vector< double > m_theComposition
Definition AGDDMixture.h:27

◆ Created()

void AGDDSimpleMaterial::Created ( bool b)
inlineinherited

◆ Extant()

bool AGDDSimpleMaterial::Extant ( ) const
inlineinherited

Definition at line 30 of file AGDDSimpleMaterial.h.

30{return m_created;}

◆ Fraction()

void AGDDMixture::Fraction ( double d)

Definition at line 36 of file AGDDMixture.cxx.

37{
38 m_theComposition.push_back(d);
39}

◆ GetDensity()

double AGDDSimpleMaterial::GetDensity ( ) const
inlineinherited

Definition at line 27 of file AGDDSimpleMaterial.h.

27{return m_density;}

◆ GetMaterial()

void * AGDDSimpleMaterial::GetMaterial ( )
inlineinherited

Definition at line 31 of file AGDDSimpleMaterial.h.

31{return m_theMaterial;}

◆ GetMaterialType()

material_type AGDDSimpleMaterial::GetMaterialType ( ) const
inlineinherited

Definition at line 28 of file AGDDSimpleMaterial.h.

28{return m_mType;}

◆ GetName()

const std::string & AGDDSimpleMaterial::GetName ( ) const
inherited

Definition at line 23 of file AGDDSimpleMaterial.cxx.

24{
25 return m_name;
26}

◆ Material()

AGDDSimpleMaterial * AGDDMixture::Material ( int i)
inline

Definition at line 23 of file AGDDMixture.h.

23{return m_theMaterials[i];}

◆ NComponents()

int AGDDMixture::NComponents ( ) const
inline

Definition at line 22 of file AGDDMixture.h.

22{return m_theMaterials.size();}

◆ RegisterToStore()

void AGDDSimpleMaterial::RegisterToStore ( AGDDMaterialStore & ms,
AGDDSimpleMaterial * e )
inherited

Definition at line 17 of file AGDDSimpleMaterial.cxx.

19{
20 ms.RegisterMaterial(e);
21}

◆ SetMaterial()

void AGDDSimpleMaterial::SetMaterial ( void * mat)
inlineinherited

Definition at line 32 of file AGDDSimpleMaterial.h.

◆ operator<<

std::ostream & operator<< ( std::ostream & os,
const AGDDMixture & obj )
friend

Definition at line 12 of file AGDDMixture.cxx.

13{
14 os<<"- Material "<<obj.m_name<<" type=Mixture density="<<obj.m_density<<std::endl;
15 os<<"\tcomponents"<<std::endl;
16 for (unsigned int i=0;i<obj.m_theMaterials.size();i++)
17 {
18 const std::string ss=obj.m_theMaterials[i]->GetName();
19 const double ii=obj.m_theComposition[i];
20 os<<"\t\t material "<<ss<<" fraction="<<ii<<std::endl;
21 }
22 return os;
23}
static Double_t ss

Member Data Documentation

◆ m_created

bool AGDDSimpleMaterial::m_created
protectedinherited

Definition at line 36 of file AGDDSimpleMaterial.h.

◆ m_density

double AGDDSimpleMaterial::m_density
protectedinherited

Definition at line 35 of file AGDDSimpleMaterial.h.

◆ m_mType

material_type AGDDSimpleMaterial::m_mType
protectedinherited

Definition at line 38 of file AGDDSimpleMaterial.h.

◆ m_name

std::string AGDDSimpleMaterial::m_name
protectedinherited

Definition at line 34 of file AGDDSimpleMaterial.h.

◆ m_theComposition

std::vector<double> AGDDMixture::m_theComposition
private

Definition at line 27 of file AGDDMixture.h.

◆ m_theMaterial

void* AGDDSimpleMaterial::m_theMaterial
protectedinherited

Definition at line 39 of file AGDDSimpleMaterial.h.

◆ m_theMaterials

std::vector<AGDDSimpleMaterial*> AGDDMixture::m_theMaterials
private

Definition at line 26 of file AGDDMixture.h.


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