g4system
Loading...
Searching...
No Matches
cadSystemFactory.h
Go to the documentation of this file.
1#pragma once
21// c++
22#include <unordered_map>
23#include <string>
24
25// g4system
26#include "g4objectsFactory.h"
27
39{
40public:
41 // inherit the base (const std::shared_ptr<GOptions>&) ctor
43
48 [[nodiscard]] std::string_view className() const override { return "G4CadSystemFactory"; }
49
50protected:
70 G4VSolid* buildSolid(const GVolume* s,
71 std::unordered_map<std::string, G4Volume*>* g4s) override;
72};
Builds a tessellated solid from CAD files using CADMesh.
std::string_view className() const override
Factory label used in logs.
G4VSolid * buildSolid(const GVolume *s, std::unordered_map< std::string, G4Volume * > *g4s) override
Create (or fetch) a tessellated solid from a CAD file.
Definition buildSolid.cc:38
Base class orchestrating the conversion of a GVolume into a Geant4 representation.
G4ObjectsFactory(const std::shared_ptr< GOptions > &g)
Construct a factory using the global option set.
Abstract factory that converts a GEMC DB GVolume into Geant4 objects.