28 curr_err +=
"material not declared; unknown material!";
35 curr_err +=
"material name=" + mip.
name().
ns() +
":" + mip.
name().
name() +
" is declared but not defined";
45 curr_err += no_density;
57 curr_err += no_composites;
62 curr_err =
" NOT-DEFINED ";
72 std::pair<std::string, std::string>
res(
"",
"");
92 std::vector<std::pair<std::string, std::string>>
errors;
96 for (
const auto&
i :
mr) {
97 std::pair<std::string, std::string>
error(
"",
"");
106 os <<
"[DDCore:Report] Materials " << std::endl;
107 os <<
s <<
mr.size() <<
" Materials declared" << std::endl;
108 os <<
s <<
"detected errors:" <<
errors.size() << std::endl;
110 os << std::endl <<
s <<
j.second <<
" " <<
j.first << std::endl;
static PFTauRenderPlugin instance
DDMaterial is used to define and access material information.
bool DDCheckMaterial(DDMaterial &mip, std::pair< std::string, std::string > &result, int rlevel=0)
const std::string & name() const
Returns the name.
double density() const
returns the density
bool DDCheckMaterials(std::ostream &os, std::vector< std::pair< std::string, std::string >> *res)
Checks all registered materials and sends a report /p os.
double z() const
retruns the atomic number
FractionV::value_type constituent(int i) const
returns the i-th compound material and its fraction-mass
int noOfConstituents() const
returns the number of compound materials or 0 for elementary materials
const std::string fullname() const
double a() const
returns the atomic mass
def_type isDefined() const
const std::string & ns() const
Returns the namespace.