6 #ifndef CUSTOMPHYSICSFACTORY_hh 7 #define CUSTOMPHYSICSFACTORY_hh 9 #include "Geant4/G4VPhysicsConstructor.hh" 13 class CustomPhysicsTable;
20 std::cerr <<
"CustomPhysicsFactory Error : Physics registered with no name!" << std::endl;
26 virtual G4VPhysicsConstructor*
Build()
const = 0;
37 G4VPhysicsConstructor*
Build()
const {
return new T{}; }
CustomPhysicsFactory(std::string const &name)
CustomPhysicsFactoryBase(std::string const &name)
virtual G4VPhysicsConstructor * Build() const =0
virtual ~CustomPhysicsFactoryBase()=default
G4VPhysicsConstructor * Build() const
decltype(auto) constexpr empty(T &&obj)
ADL-aware version of std::empty.
std::string const & GetName() const noexcept