ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
DetectorDescription
AGDD
AGDDModel
AGDDModel
AGDDMaterialStore.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef AGDDMaterialStore_H
6
#define AGDDMaterialStore_H
7
8
#include <string>
9
#include <string_view>
10
#include <map>
11
12
class
AGDDSimpleMaterial
;
13
class
AGDDElement
;
14
15
16
17
typedef
std::map<std::string,AGDDSimpleMaterial*, std::less<> >
AGDDMaterialMap
;
18
typedef
std::map<std::string,AGDDElement*, std::less<> >
AGDDElementMap
;
19
20
typedef
AGDDMaterialMap::const_iterator
MaterialIterator
;
21
typedef
AGDDElementMap::const_iterator
ElementIterator
;
22
23
class
AGDDMaterialStore
{
24
public
:
25
AGDDMaterialStore
();
26
void
RegisterElement
(
AGDDElement
*);
27
void
RegisterMaterial
(
AGDDSimpleMaterial
*);
28
AGDDSimpleMaterial
*
GetMaterial
(std::string_view);
29
AGDDElement
*
GetElement
(std::string_view);
30
31
int
NumberOfMaterials
() {
return
m_nrOfMaterials
;}
32
int
NumberOfElements
() {
return
m_nrOfElements
;}
33
34
MaterialIterator
MaterialBegin
() {
return
m_theMaterials
.begin();}
35
MaterialIterator
MaterialEnd
() {
return
m_theMaterials
.end();}
36
ElementIterator
ElementBegin
() {
return
m_theElements
.begin();}
37
ElementIterator
ElementEnd
() {
return
m_theElements
.end();}
38
39
40
void
PrintElementNames
();
41
void
PrintMaterialNames
();
42
void
PrintElement
(
const
std::string& n);
43
void
PrintMaterial
(
const
std::string& n);
44
45
private
:
46
AGDDMaterialMap
m_theMaterials
;
47
AGDDElementMap
m_theElements
;
48
49
int
m_nrOfMaterials
;
50
int
m_nrOfElements
;
51
52
};
53
54
#endif
AGDDMaterialMap
std::map< std::string, AGDDSimpleMaterial *, std::less<> > AGDDMaterialMap
Definition
AGDDMaterialStore.h:17
ElementIterator
AGDDElementMap::const_iterator ElementIterator
Definition
AGDDMaterialStore.h:21
MaterialIterator
AGDDMaterialMap::const_iterator MaterialIterator
Definition
AGDDMaterialStore.h:20
AGDDElementMap
std::map< std::string, AGDDElement *, std::less<> > AGDDElementMap
Definition
AGDDMaterialStore.h:18
AGDDElement
Definition
AGDDElement.h:11
AGDDMaterialStore::RegisterElement
void RegisterElement(AGDDElement *)
Definition
AGDDMaterialStore.cxx:18
AGDDMaterialStore::NumberOfElements
int NumberOfElements()
Definition
AGDDMaterialStore.h:32
AGDDMaterialStore::PrintElementNames
void PrintElementNames()
Definition
AGDDMaterialStore.cxx:54
AGDDMaterialStore::m_theMaterials
AGDDMaterialMap m_theMaterials
Definition
AGDDMaterialStore.h:46
AGDDMaterialStore::NumberOfMaterials
int NumberOfMaterials()
Definition
AGDDMaterialStore.h:31
AGDDMaterialStore::ElementEnd
ElementIterator ElementEnd()
Definition
AGDDMaterialStore.h:37
AGDDMaterialStore::MaterialBegin
MaterialIterator MaterialBegin()
Definition
AGDDMaterialStore.h:34
AGDDMaterialStore::RegisterMaterial
void RegisterMaterial(AGDDSimpleMaterial *)
Definition
AGDDMaterialStore.cxx:27
AGDDMaterialStore::m_nrOfMaterials
int m_nrOfMaterials
Definition
AGDDMaterialStore.h:49
AGDDMaterialStore::m_nrOfElements
int m_nrOfElements
Definition
AGDDMaterialStore.h:50
AGDDMaterialStore::GetMaterial
AGDDSimpleMaterial * GetMaterial(std::string_view)
Definition
AGDDMaterialStore.cxx:37
AGDDMaterialStore::PrintElement
void PrintElement(const std::string &n)
Definition
AGDDMaterialStore.cxx:82
AGDDMaterialStore::m_theElements
AGDDElementMap m_theElements
Definition
AGDDMaterialStore.h:47
AGDDMaterialStore::AGDDMaterialStore
AGDDMaterialStore()
Definition
AGDDMaterialStore.cxx:11
AGDDMaterialStore::PrintMaterialNames
void PrintMaterialNames()
Definition
AGDDMaterialStore.cxx:68
AGDDMaterialStore::GetElement
AGDDElement * GetElement(std::string_view)
Definition
AGDDMaterialStore.cxx:45
AGDDMaterialStore::PrintMaterial
void PrintMaterial(const std::string &n)
Definition
AGDDMaterialStore.cxx:90
AGDDMaterialStore::ElementBegin
ElementIterator ElementBegin()
Definition
AGDDMaterialStore.h:36
AGDDMaterialStore::MaterialEnd
MaterialIterator MaterialEnd()
Definition
AGDDMaterialStore.h:35
AGDDSimpleMaterial
Definition
AGDDSimpleMaterial.h:14
Generated on
for ATLAS Offline Software by
1.17.0