ATLAS Offline Software
Public Member Functions | Private Member Functions | Private Attributes | List of all members
SCT_MaterialManager Class Reference

#include <SCT_MaterialManager.h>

Collaboration diagram for SCT_MaterialManager:

Public Member Functions

 SCT_MaterialManager (SCT_DataBase *db)
 
const GeoMaterial * getMaterial (const std::string &materialName)
 
const GeoElement * getElement (const std::string &elementName)
 
const GeoMaterial * getMaterial (const std::string &originalMaterial, double density, const std::string &newName="")
 
const GeoMaterial * getMaterialForVolume (const std::string &materialName, double volume)
 
const GeoMaterial * gasMaterial () const
 

Private Member Functions

void loadMaterials ()
 
void addMaterial (GeoMaterial *material)
 

Private Attributes

std::unique_ptr< InDetMaterialManagerm_materialManager
 
const GeoMaterial * m_gasMaterial
 

Detailed Description

Definition at line 20 of file SCT_MaterialManager.h.

Constructor & Destructor Documentation

◆ SCT_MaterialManager()

SCT_MaterialManager::SCT_MaterialManager ( SCT_DataBase db)

Definition at line 18 of file SCT_MaterialManager.cxx.

19 {
20  // Get my material manager.
21  ISvcLocator* svcLocator = Gaudi::svcLocator(); // from Bootstrap
23  StatusCode sc = svcLocator->service("DetectorStore", detStore );
24  if (sc.isFailure()) {
25  std::cout << "Could not locate DetectorStore" << std::endl;
26  return;
27  }
28 
29  m_materialManager = std::make_unique<InDetMaterialManager>("SCT_MaterialManager", db->athenaComps());
30  m_materialManager->addWeightTable(db->weightTable(), "sct");
31  m_materialManager->addScalingTable(db->scalingTable());
32 
33  loadMaterials();
34 
35  m_gasMaterial = m_materialManager->getMaterial("std::Air");
36 }

Member Function Documentation

◆ addMaterial()

void SCT_MaterialManager::addMaterial ( GeoMaterial *  material)
private

Definition at line 57 of file SCT_MaterialManager.cxx.

58 {
59  return m_materialManager->addMaterial(material);
60 }

◆ gasMaterial()

const GeoMaterial * SCT_MaterialManager::gasMaterial ( ) const

Definition at line 80 of file SCT_MaterialManager.cxx.

81 {
82  return m_gasMaterial;
83 }

◆ getElement()

const GeoElement * SCT_MaterialManager::getElement ( const std::string &  elementName)

Definition at line 45 of file SCT_MaterialManager.cxx.

46 {
47  return m_materialManager->getElement(elementName);
48 }

◆ getMaterial() [1/2]

const GeoMaterial * SCT_MaterialManager::getMaterial ( const std::string &  materialName)

Definition at line 51 of file SCT_MaterialManager.cxx.

52 {
53  return m_materialManager->getMaterial(materialName);
54 }

◆ getMaterial() [2/2]

const GeoMaterial * SCT_MaterialManager::getMaterial ( const std::string &  originalMaterial,
double  density,
const std::string &  newName = "" 
)

Definition at line 63 of file SCT_MaterialManager.cxx.

66 {
67 
68  return m_materialManager->getMaterial(originalMaterial, density, newName);
69 }

◆ getMaterialForVolume()

const GeoMaterial * SCT_MaterialManager::getMaterialForVolume ( const std::string &  materialName,
double  volume 
)

Definition at line 72 of file SCT_MaterialManager.cxx.

73 {
74  return m_materialManager->getMaterialForVolume(materialName, volume);
75 }

◆ loadMaterials()

void SCT_MaterialManager::loadMaterials ( )
private

Definition at line 40 of file SCT_MaterialManager.cxx.

41 {
42 }

Member Data Documentation

◆ m_gasMaterial

const GeoMaterial* SCT_MaterialManager::m_gasMaterial
private

Definition at line 43 of file SCT_MaterialManager.h.

◆ m_materialManager

std::unique_ptr<InDetMaterialManager> SCT_MaterialManager::m_materialManager
private

Definition at line 42 of file SCT_MaterialManager.h.


The documentation for this class was generated from the following files:
CaloCondBlobAlgs_fillNoiseFromASCII.db
db
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:43
SCT_MaterialManager::m_gasMaterial
const GeoMaterial * m_gasMaterial
Definition: SCT_MaterialManager.h:43
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
StoreGateSvc
The Athena Transient Store API.
Definition: StoreGateSvc.h:128
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
python.PyKernel.detStore
detStore
Definition: PyKernel.py:41
MakeNewFileFromOldAndSubstitution.newName
dictionary newName
Definition: ICHEP2016/MakeNewFileFromOldAndSubstitution.py:95
SCT_MaterialManager::m_materialManager
std::unique_ptr< InDetMaterialManager > m_materialManager
Definition: SCT_MaterialManager.h:42
SCT_MaterialManager::loadMaterials
void loadMaterials()
Definition: SCT_MaterialManager.cxx:40