5 #ifndef GEOMODELKERNEL_GEOELEMENT_H 6 #define GEOMODELKERNEL_GEOELEMENT_H 16 #include "GeoModelKernel/RCBase.h" 17 #include "GeoModelKernel/Units.h" 23 GeoElement (
const std::string &Name,
const std::string &Symbol,
double Z,
double A);
32 const std::string& getName ()
const;
35 const std::string& getSymbol ()
const;
38 const double& getZ ()
const;
41 const double& getA ()
const;
44 double getRadTsai ()
const;
60 inline int GeoElement::operator==(
const GeoElement &right)
const 64 right.m_name && m_symbol == right.m_symbol && m_z == right.m_z && m_a == right.m_a;
67 inline int GeoElement::operator!=(
const GeoElement &right)
const 69 return m_name != right.m_name ||
70 m_symbol != right.m_symbol || m_z != right.m_z || m_a != right.m_a;
73 inline double GeoElement::getN ()
const 75 return m_a * (GeoModelKernelUnits::mole / GeoModelKernelUnits::gram);
78 inline const std::string& GeoElement::getName ()
const 83 inline const std::string& GeoElement::getSymbol ()
const 88 inline const double& GeoElement::getZ ()
const 93 inline const double& GeoElement::getA ()
const This class represents chemical elements. Elements are allocated on the heap and deleted automatically...
This is a base class for objects whose memory is managed through reference counting. Reference-counted objects can only be created using operator new, the cannot be created on the stack.