5#ifndef ZDC_DETFACTORY_H
6#define ZDC_DETFACTORY_H
8#include "GeoModelKernel/GeoVDetectorFactory.h"
9#include "GeoModelKernel/GeoDefinitions.h"
32 virtual void create(GeoPhysVol *world)
override;
37 inline void addModule(std::unique_ptr<ZDC_ModuleBase> module) {
m_modules.push_back(std::move(module) ); }
38 void setTANSlot(
uint iside,
double width,
double height,
double depth,
const GeoTrf::Transform3D trf,
const std::string& name);
45 std::vector< std::unique_ptr<ZDC_ModuleBase> >
m_modules;
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
The Athena Transient Store API.
This class holds one or more material managers and makes them storeable, under StoreGate.
std::vector< std::unique_ptr< ZDC_ModuleBase > > m_modules
virtual void create(GeoPhysVol *world) override
std::array< std::string, 2 > m_tanSlotName
ZDC_DetFactory(StoreGateSvc *)
std::array< GeoTrf::Transform3D, 2 > m_tanSlotTransform
void setTANSlot(uint iside, double width, double height, double depth, const GeoTrf::Transform3D trf, const std::string &name)
void addModule(std::unique_ptr< ZDC_ModuleBase > module)
std::array< double, 2 > m_tanD
std::array< double, 2 > m_tanH
std::array< double, 2 > m_tanW
StoreGateSvc * m_detectorStore
virtual const ZDC_DetManager * getDetectorManager() const override
void buildMaterials(StoredMaterialManager *materialManager)
ZDC_DetManager * m_detectorManager
std::string depth
tag string for intendation