ATLAS Offline Software
Loading...
Searching...
No Matches
LUCID_DetectorFactory.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef LUCIDGEOMODEL_LUCIDDETECTORFACTORY_H
6#define LUCIDGEOMODEL_LUCIDDETECTORFACTORY_H
7
8#include "GeoModelKernel/GeoVDetectorFactory.h"
11
14
15class StoreGateSvc;
17class GeoShape;
18class GeoPhysVol;
19class GeoFullPhysVol;
20class LUCID_RDBAccess;
21class IRDBAccessSvc;
22
23class LUCID_DetectorFactory : public GeoVDetectorFactory {
24
25 public:
26
29
30 virtual void create(GeoPhysVol*);
31
32 virtual const LUCID_DetectorManager* getDetectorManager() const;
33
34 void buildMaterials();
35
36 void addVJcone (GeoFullPhysVol*);
37 void addVJconeFrontRing (GeoFullPhysVol*);
38 void addVJconeBackRing (GeoFullPhysVol*);
39 void addLucidSupportCylinder(GeoFullPhysVol*);
40 void addPmtSupportCylinder (GeoFullPhysVol*);
41 void addPmtTubes (GeoFullPhysVol*);
42 void addPmtSupport (GeoFullPhysVol*);
43
44 private:
45
48
54
56 GeoMaterial* m_peek;
57};
58
59#endif
IRDBAccessSvc is an abstract interface to the athena service that provides the following functionalit...
virtual const LUCID_DetectorManager * getDetectorManager() const
LUCID_DetectorFactory(const LUCID_DetectorFactory &right)
StoredMaterialManager * m_materialManager
LUCID_DetectorFactory(StoreGateSvc *pDetStore, IRDBAccessSvc *pAccess)
void addLucidSupportCylinder(GeoFullPhysVol *)
LUCID_DetectorManager * m_detectorManager
void addPmtSupportCylinder(GeoFullPhysVol *)
void addVJconeFrontRing(GeoFullPhysVol *)
void addPmtTubes(GeoFullPhysVol *)
void addVJcone(GeoFullPhysVol *)
void addPmtSupport(GeoFullPhysVol *)
virtual void create(GeoPhysVol *)
void addVJconeBackRing(GeoFullPhysVol *)
const LUCID_DetectorFactory & operator=(const LUCID_DetectorFactory &right)
GeoExtendedMaterial * m_quartz
The Athena Transient Store API.
This class holds one or more material managers and makes them storeable, under StoreGate.