gVirtualXRay  2.0.10
VirtualX-RayImagingLibraryonGPU
Public Member Functions | Static Public Member Functions | Protected Member Functions | Friends
gVirtualXRay::TissueMaterial Class Reference

TissueMaterial is a class to manage a material. More...

#include <TissueMaterial.h>

Collaboration diagram for gVirtualXRay::TissueMaterial:
Collaboration graph

Public Member Functions

 TissueMaterial (short aMinHUValue=0, short aMaxHUValue=0, double H=0, double C=0, double N=0, double O=0, double Na=0, double Mg=0, double P=0, double S=0, double Cl=0, double Ar=0, double K=0, double Ca=0, double Ti=0, double Cu=0, double Zn=0, double Ag=0, double Sn=0, double Fe=0, double I=0)
 Default Constructor. More...
 
 TissueMaterial (const TissueMaterial &aMaterial)
 Copy constructor. More...
 
void clear ()
 Remove all the atomic elements from the material. More...
 
const std::map< int, double > & getWeightSet () const
 Accessor on the weight of each atomic element. More...
 
short getMinHUValue () const
 Accessor on the minimum HU. More...
 
short getMaxHUValue () const
 Accessor on the maximum HU. More...
 
double getMolarMass () const
 Accessor on the molar mass of the material. More...
 
void setDensity (double aDensity)
 Set the density for the mixture regardless of the HU value. More...
 
double getMassAttenuationTotal (double anEnergy) const
 
double getLinearAttenuationTotal (short aHounsfieldValue, double anEnergy) const
 
double getMu (short aHounsfieldValue, double anEnergy) const
 
double getLinearAttenuationTotal (double anEnergy) const
 
double getMu (double anEnergy) const
 
double getS (double x) const
 
TissueMaterialoperator= (const TissueMaterial &aMaterial)
 Copy operator. More...
 
bool operator== (const TissueMaterial &aMaterial) const
 Operator ==. More...
 
bool operator!= (const TissueMaterial &aMaterial) const
 Operator !=. More...
 

Static Public Member Functions

static double getDensity (short aHounsfieldValue)
 Get the density for a given material (in HU). More...
 

Protected Member Functions

void setMixture (const std::map< int, double > &aWeightSet)
 

Friends

std::ostream & operator<< (std::ostream &anOutputSream, const TissueMaterial &aTissueMaterial)
 operator << More...
 
std::istream & operator>> (std::istream &anInputSream, TissueMaterial &aTissueMaterial)
 operator << More...
 

Detailed Description

TissueMaterial is a class to manage a material.

Definition at line 110 of file TissueMaterial.h.

Constructor & Destructor Documentation

◆ TissueMaterial() [1/2]

gVirtualXRay::TissueMaterial::TissueMaterial ( short  aMinHUValue = 0,
short  aMaxHUValue = 0,
double  H = 0,
double  C = 0,
double  N = 0,
double  O = 0,
double  Na = 0,
double  Mg = 0,
double  P = 0,
double  S = 0,
double  Cl = 0,
double  Ar = 0,
double  K = 0,
double  Ca = 0,
double  Ti = 0,
double  Cu = 0,
double  Zn = 0,
double  Ag = 0,
double  Sn = 0,
double  Fe = 0,
double  I = 0 
)
inline

Default Constructor.

Definition at line 84 of file TissueMaterial.inl.

◆ TissueMaterial() [2/2]

gVirtualXRay::TissueMaterial::TissueMaterial ( const TissueMaterial aMaterial)
inline

Copy constructor.

Definition at line 141 of file TissueMaterial.inl.

Member Function Documentation

◆ clear()

void gVirtualXRay::TissueMaterial::clear ( )
inline

Remove all the atomic elements from the material.

Definition at line 152 of file TissueMaterial.inl.

◆ getDensity()

static double gVirtualXRay::TissueMaterial::getDensity ( short  aHounsfieldValue)
static

Get the density for a given material (in HU).

◆ getLinearAttenuationTotal() [1/2]

double gVirtualXRay::TissueMaterial::getLinearAttenuationTotal ( short  aHounsfieldValue,
double  anEnergy 
) const
inline

Get the linear attenuation coefficient for a HU value at a given energy (in mm-1) (values are interpolated).

Definition at line 211 of file TissueMaterial.inl.

◆ getLinearAttenuationTotal() [2/2]

double gVirtualXRay::TissueMaterial::getLinearAttenuationTotal ( double  anEnergy) const
inline

Get the linear attenuation coefficient of the mixture (regardless of the HU value) at a given energy (values are interpolated). Note that the density must have been set.

Definition at line 231 of file TissueMaterial.inl.

◆ getMassAttenuationTotal()

double gVirtualXRay::TissueMaterial::getMassAttenuationTotal ( double  anEnergy) const
inline

Get the mass attenuation coefficient at a given energy (values are interpolated).

Definition at line 203 of file TissueMaterial.inl.

◆ getMaxHUValue()

short gVirtualXRay::TissueMaterial::getMaxHUValue ( ) const
inline

Accessor on the maximum HU.

Definition at line 179 of file TissueMaterial.inl.

◆ getMinHUValue()

short gVirtualXRay::TissueMaterial::getMinHUValue ( ) const
inline

Accessor on the minimum HU.

Definition at line 171 of file TissueMaterial.inl.

◆ getMolarMass()

double gVirtualXRay::TissueMaterial::getMolarMass ( ) const
inline

Accessor on the molar mass of the material.

Definition at line 187 of file TissueMaterial.inl.

◆ getMu() [1/2]

double gVirtualXRay::TissueMaterial::getMu ( short  aHounsfieldValue,
double  anEnergy 
) const
inline

Get the linear attenuation coefficient for a HU value at a given energy (in mm-1) (values are interpolated).

Definition at line 221 of file TissueMaterial.inl.

◆ getMu() [2/2]

double gVirtualXRay::TissueMaterial::getMu ( double  anEnergy) const
inline

Get the linear attenuation coefficient of the mixture (regardless of the HU value) at a given energy (values are interpolated). Note that the density must have been set.

Definition at line 246 of file TissueMaterial.inl.

◆ getS()

double gVirtualXRay::TissueMaterial::getS ( double  x) const
inline

Get the Compton scattering cross section sample (values are interpolated).

Definition at line 254 of file TissueMaterial.inl.

◆ getWeightSet()

const std::map< int, double > & gVirtualXRay::TissueMaterial::getWeightSet ( ) const
inline

Accessor on the weight of each atomic element.

Definition at line 163 of file TissueMaterial.inl.

◆ operator!=()

bool gVirtualXRay::TissueMaterial::operator!= ( const TissueMaterial aMaterial) const
inline

Operator !=.

Definition at line 290 of file TissueMaterial.inl.

◆ operator=()

TissueMaterial & gVirtualXRay::TissueMaterial::operator= ( const TissueMaterial aMaterial)
inline

Copy operator.

Definition at line 262 of file TissueMaterial.inl.

◆ operator==()

bool gVirtualXRay::TissueMaterial::operator== ( const TissueMaterial aMaterial) const
inline

Operator ==.

Definition at line 278 of file TissueMaterial.inl.

◆ setDensity()

void gVirtualXRay::TissueMaterial::setDensity ( double  aDensity)
inline

Set the density for the mixture regardless of the HU value.

Definition at line 195 of file TissueMaterial.inl.

◆ setMixture()

void gVirtualXRay::TissueMaterial::setMixture ( const std::map< int, double > &  aWeightSet)
protected

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  anOutputSream,
const TissueMaterial aTissueMaterial 
)
friend

operator <<

Definition at line 298 of file TissueMaterial.inl.

◆ operator>>

std::istream& operator>> ( std::istream &  anInputSream,
TissueMaterial aTissueMaterial 
)
friend

operator <<

Definition at line 317 of file TissueMaterial.inl.


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