ATLAS Offline Software
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ForDetEnvelopeFactory Class Referencefinal

#include <ForDetEnvelopeFactory.h>

Inheritance diagram for ForDetEnvelopeFactory:
Collaboration diagram for ForDetEnvelopeFactory:

Public Member Functions

 ForDetEnvelopeFactory (StoreGateSvc *pDetStore)
 
 ~ForDetEnvelopeFactory ()
 
virtual void create (GeoPhysVol *world) override
 
virtual const ForDetEnvelopeManagergetDetectorManager () const override
 

Private Member Functions

const ForDetEnvelopeFactoryoperator= (const ForDetEnvelopeFactory &right)
 
 ForDetEnvelopeFactory (const ForDetEnvelopeFactory &right)
 

Private Attributes

ForDetEnvelopeManagerm_detectorManager
 
StoredMaterialManagerm_materialManager
 
StoreGateSvcm_detectorStore
 

Detailed Description

Definition at line 15 of file ForDetEnvelopeFactory.h.

Constructor & Destructor Documentation

◆ ForDetEnvelopeFactory() [1/2]

ForDetEnvelopeFactory::ForDetEnvelopeFactory ( StoreGateSvc pDetStore)

Definition at line 22 of file ForDetEnvelopeFactory.cxx.

23  : m_detectorManager(0),
26 {
27 }

◆ ~ForDetEnvelopeFactory()

ForDetEnvelopeFactory::~ForDetEnvelopeFactory ( )

Definition at line 29 of file ForDetEnvelopeFactory.cxx.

30 {
31 }

◆ ForDetEnvelopeFactory() [2/2]

ForDetEnvelopeFactory::ForDetEnvelopeFactory ( const ForDetEnvelopeFactory right)
private

Member Function Documentation

◆ create()

void ForDetEnvelopeFactory::create ( GeoPhysVol *  world)
overridevirtual

Definition at line 33 of file ForDetEnvelopeFactory.cxx.

34 {
35  if (StatusCode::SUCCESS != m_detectorStore->retrieve(m_materialManager, std::string("MATERIALS"))) {
36  return;
37  }
38 
39  // Get the materials
40  const GeoMaterial* air = m_materialManager->getMaterial("std::Air");
41 
42  // Build boolean shape: union of two tubes
43  const GeoTube* tube1 = new GeoTube(0.,2000.*Gaudi::Units::mm,188750.*Gaudi::Units::mm);
44  GeoTube* tube2 = new GeoTube(0.,2000.*Gaudi::Units::mm,188750.*Gaudi::Units::mm);
45  GeoTrf::TranslateZ3D xfRelativeA(211250.*Gaudi::Units::mm);
46  GeoTrf::TranslateZ3D xfRelativeC(-211250.*Gaudi::Units::mm);
47 
48  const GeoShapeShift& envShape1 = (*tube1)<<xfRelativeA;
49  const GeoShapeUnion& envShape = envShape1.add((*tube2)<<xfRelativeC);
50 
51  GeoLogVol* lvEnv = new GeoLogVol("ForDetEnvelope",&envShape,air);
52  GeoPhysVol* pvEnv = new GeoPhysVol(lvEnv);
53 
54  GeoNameTag *tag = new GeoNameTag("ForDetEnvelope");
55  world->add(tag);
56  world->add(pvEnv);
57 
60 }

◆ getDetectorManager()

const ForDetEnvelopeManager * ForDetEnvelopeFactory::getDetectorManager ( ) const
overridevirtual

Definition at line 63 of file ForDetEnvelopeFactory.cxx.

64 {
65  return m_detectorManager;
66 }

◆ operator=()

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

Member Data Documentation

◆ m_detectorManager

ForDetEnvelopeManager* ForDetEnvelopeFactory::m_detectorManager
private

Definition at line 38 of file ForDetEnvelopeFactory.h.

◆ m_detectorStore

StoreGateSvc* ForDetEnvelopeFactory::m_detectorStore
private

Definition at line 41 of file ForDetEnvelopeFactory.h.

◆ m_materialManager

StoredMaterialManager* ForDetEnvelopeFactory::m_materialManager
private

Definition at line 40 of file ForDetEnvelopeFactory.h.


The documentation for this class was generated from the following files:
ForDetEnvelopeManager
Definition: ForDetEnvelopeManager.h:14
ForDetEnvelopeFactory::m_detectorManager
ForDetEnvelopeManager * m_detectorManager
Definition: ForDetEnvelopeFactory.h:38
ForDetEnvelopeFactory::m_detectorStore
StoreGateSvc * m_detectorStore
Definition: ForDetEnvelopeFactory.h:41
StoreGateSvc::retrieve
StatusCode retrieve(const T *&ptr) const
Retrieve the default object into a const T*.
ForDetEnvelopeFactory::m_materialManager
StoredMaterialManager * m_materialManager
Definition: ForDetEnvelopeFactory.h:40
ForDetEnvelopeManager::addTreeTop
void addTreeTop(PVLink)
Definition: ForDetEnvelopeManager.cxx:26
python.PyKernel.detStore
detStore
Definition: PyKernel.py:41
python.SystemOfUnits.mm
int mm
Definition: SystemOfUnits.py:83
StoredMaterialManager::getMaterial
virtual const GeoMaterial * getMaterial(const std::string &name)=0
CaloCondBlobAlgs_fillNoiseFromASCII.tag
string tag
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:24