22#ifndef BASE_VGM_V_FACTORY_H
23#define BASE_VGM_V_FACTORY_H
37class IMaterialFactory;
52 virtual std::string
Name()
const;
63 virtual int Debug()
const;
67 virtual bool Ignore()
const;
87 typedef std::map<VGM::IVolume*, VGM::IVolume*> VolumeMap;
107 void ExportPlacements(
VGM::IFactory* factory, VolumeMap* map)
const;
116 double fDummyBoxDimensions;
141 return fMaterialFactory;
162 fDummyBoxDimensions = value;
167 return fDummyBoxDimensions;
172 fBestMatch = bestMatch;
179 fSingleMode = singleMode;
The abstract base class to geometry factory.
virtual bool Export(VGM::IFactory *factory) const
Export geometry to the specified factory.
virtual const VGM::SolidStore & Solids() const
Return the store of solids.
virtual bool SingleMode() const
Return the single mode option.
virtual const VGM::VolumeStore & Volumes() const
Return the store of volumes.
virtual void PrintSolids() const
Print all solids.
virtual void SetSingleMode(bool singleMode)
Set single mode option.
virtual VGM::IMaterialFactory * MaterialFactory() const
Return the associated material factory.
virtual void PrintVolumes() const
Print all volumes.
virtual bool BestMatch() const
Return the single mode option.
virtual bool Ignore() const
Return the ignore option.
virtual void SetDebug(int debug)
Set the debug level.
virtual VGM::SolidStore & SolidStore()
virtual void SetDummyBoxDimensions(double value)
Set the dimensions in mm of a dummy box replacing the unsupported shapes if the 'ignore' option is ac...
virtual void SetBestMatch(bool value)
Set best match option.
virtual int Debug() const
Return the debug level.
virtual double DummyBoxDimensions() const
Return the ignore option.
virtual void SetIgnore(bool ignore, double dummyBoxDimensions=VGM::kDefaultDummyBoxDimensions)
Set ignoring of unsupported features.
virtual std::string Name() const
Return the name of this factory.
virtual VGM::VolumeStore & VolumeStore()
The VGM interface to Boolean solids.
The VGM interface to displaced solids.
The VGM interface to geometry factory providing functions for geometry construction and conversions.
The VGM interface to material factory providing functions for material conversions.
The VGM interface to Boolean solids.
The VGM interface to positions of volumes.
The VGM interface to Boolean solids.
The VGM interface to solids.
std::vector< double > Transform
constexpr double kDefaultDummyBoxDimensions
The default value for the dimensions in mm of a dummy box replacing the unsupported shapes if the 'ig...
std::vector< IVolume * > VolumeStore
std::vector< ISolid * > SolidStore