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

#include <SimplestToyDetectorFactory.h>

Inheritance diagram for SimplestToyDetectorFactory:
Collaboration diagram for SimplestToyDetectorFactory:

Public Member Functions

 SimplestToyDetectorFactory (StoreGateSvc *pDetStore)
 
 ~SimplestToyDetectorFactory ()
 
virtual void create (GeoPhysVol *world)
 
virtual const ToyDetectorManagergetDetectorManager () const
 

Private Member Functions

const SimplestToyDetectorFactoryoperator= (const SimplestToyDetectorFactory &right)
 
 SimplestToyDetectorFactory (const SimplestToyDetectorFactory &right)
 

Private Attributes

ToyDetectorManagerm_detectorManager
 
StoreGateSvcm_detectorStore
 

Detailed Description

Definition at line 10 of file SimplestToyDetectorFactory.h.

Constructor & Destructor Documentation

◆ SimplestToyDetectorFactory() [1/2]

SimplestToyDetectorFactory::SimplestToyDetectorFactory ( StoreGateSvc pDetStore)

Definition at line 29 of file SimplestToyDetectorFactory.cxx.

◆ ~SimplestToyDetectorFactory()

SimplestToyDetectorFactory::~SimplestToyDetectorFactory ( )

Definition at line 33 of file SimplestToyDetectorFactory.cxx.

33 {}

◆ SimplestToyDetectorFactory() [2/2]

SimplestToyDetectorFactory::SimplestToyDetectorFactory ( const SimplestToyDetectorFactory right)
private

Member Function Documentation

◆ create()

void SimplestToyDetectorFactory::create ( GeoPhysVol *  world)
virtual

Definition at line 38 of file SimplestToyDetectorFactory.cxx.

39 {
41 
42  //-----------------------------------------------------------------------------------//
43  // Get the materials that we shall use. //
44  // ----------------------------------------------------------------------------------//
45 
46  // Bogus densities. Later: read from database.
47  double densityOfAir=0.1, densityOfPolystyrene=0.2;
48  const GeoMaterial *air = new GeoMaterial("Air Two",densityOfAir);
49  const GeoMaterial *poly = new GeoMaterial("std::Polystyrene",densityOfPolystyrene);
50 
51 
52  //-----------------------------------------------------------------------------------//
53  // Next make the box that describes the shape of the toy volume: //
54  const GeoBox *toyBox = new GeoBox(800*GeoModelKernelUnits::cm, 800*GeoModelKernelUnits::cm, 1000*GeoModelKernelUnits::cm); //
55  // Bundle this with a material into a logical volume: //
56  const GeoLogVol *toyLog = new GeoLogVol("ToyLog", toyBox, air); //
57  // ..And create a physical volume: //
58  GeoPhysVol *toyPhys = new GeoPhysVol(toyLog); //
59  // Add this to the list of top level physical volumes: //
60  m_detectorManager->addTreeTop(toyPhys); //
61 
62 
63 
64  GeoBox *sPass = new GeoBox(5.0*GeoModelKernelUnits::cm, 30*GeoModelKernelUnits::cm, 30*GeoModelKernelUnits::cm);
65  GeoLogVol *lPass = new GeoLogVol("Passive", sPass, poly);
66  GeoPhysVol *pPass = new GeoPhysVol(lPass);
67 
68  GeoBox *sIPass = new GeoBox(4*GeoModelKernelUnits::cm, 25*GeoModelKernelUnits::cm, 25*GeoModelKernelUnits::cm);
69  GeoLogVol *lIPass = new GeoLogVol("InnerPassive", sIPass, air);
70  GeoPhysVol *pIPass = new GeoPhysVol(lIPass);
71 
72  pPass->add(pIPass);
73  toyPhys->add(pPass);
74 
75 
76 
77  //------------------------------------------------------------------------------------//
78  // Now insert all of this into the world... //
79  GeoNameTag *tag = new GeoNameTag("Toy"); //
80  world->add(tag); //
81  world->add(toyPhys); //
82  //------------------------------------------------------------------------------------//
83 }

◆ getDetectorManager()

const ToyDetectorManager * SimplestToyDetectorFactory::getDetectorManager ( ) const
virtual

Definition at line 85 of file SimplestToyDetectorFactory.cxx.

86 {
87  return m_detectorManager;
88 }

◆ operator=()

const SimplestToyDetectorFactory& SimplestToyDetectorFactory::operator= ( const SimplestToyDetectorFactory right)
private

Member Data Documentation

◆ m_detectorManager

ToyDetectorManager* SimplestToyDetectorFactory::m_detectorManager
private

Definition at line 33 of file SimplestToyDetectorFactory.h.

◆ m_detectorStore

StoreGateSvc* SimplestToyDetectorFactory::m_detectorStore
private

Definition at line 35 of file SimplestToyDetectorFactory.h.


The documentation for this class was generated from the following files:
cm
const double cm
Definition: Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimParametrization/tools/FCAL_ChannelMap.cxx:25
MuonCalib::Legendre::poly
constexpr double poly(const double x)
Definition: LegendrePoly.h:116
SimplestToyDetectorFactory::m_detectorManager
ToyDetectorManager * m_detectorManager
Definition: SimplestToyDetectorFactory.h:33
python.PyKernel.detStore
detStore
Definition: PyKernel.py:41
SimplestToyDetectorFactory::m_detectorStore
StoreGateSvc * m_detectorStore
Definition: SimplestToyDetectorFactory.h:35
ToyDetectorManager
Definition: ToyDetectorManager.h:13
CaloCondBlobAlgs_fillNoiseFromASCII.tag
string tag
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:24
ToyDetectorManager::addTreeTop
void addTreeTop(PVLink)
Definition: ToyDetectorManager.cxx:53