Belle II Software  release-08-01-10
FANGSCreator.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #ifndef FANGSCREATOR_H_
10 #define FANGSCREATOR_H_
11 
12 #include <geometry/CreatorBase.h>
13 #include <simulation/kernel/SensitiveDetectorBase.h>
14 
15 class G4LogicalVolume;
16 class G4Material;
17 class G4UserLimits;
18 
19 
20 namespace Belle2 {
26  namespace fangs {
27 
30  public:
35  FANGSCreator(Simulation::SensitiveDetectorBase* sensitive = nullptr);
39  virtual ~FANGSCreator();
49  void createShape(const std::string& prefix, const GearDir& params,
50  G4LogicalVolume* parent, double roffset, bool check);
57  virtual void create(const GearDir& content, G4LogicalVolume& topVolume,
59  protected:
63  G4Material* m_topMaterial{nullptr};
65  G4UserLimits* m_stepLength{nullptr};
66  };
67 
68  }
70 }
71 
72 #endif /* FANGSCREATOR_H_ */
GearDir is the basic class used for accessing the parameter store.
Definition: GearDir.h:31
Base class for all Sensitive Detectors to create hits during simulation.
The creator for the FANGS geometry.
Definition: FANGSCreator.h:29
void createShape(const std::string &prefix, const GearDir &params, G4LogicalVolume *parent, double roffset, bool check)
create a shape (box or cylinder) from XML description and place all child shapes in it by recursively...
Definition: FANGSCreator.cc:49
FANGSCreator(Simulation::SensitiveDetectorBase *sensitive=nullptr)
Constructor.
Definition: FANGSCreator.cc:36
virtual void create(const GearDir &content, G4LogicalVolume &topVolume, geometry::GeometryTypes type)
Creation of the detector geometry from Gearbox (XML).
virtual ~FANGSCreator()
Destructor.
Definition: FANGSCreator.cc:43
G4UserLimits * m_stepLength
pointer to the G4Userlimits to set for sensitive volumes (if any)
Definition: FANGSCreator.h:65
Simulation::SensitiveDetectorBase * m_sensitive
pointer to the sensitive detector implementation
Definition: FANGSCreator.h:61
G4Material * m_topMaterial
pointer to the material in the top volume to use as default
Definition: FANGSCreator.h:63
Pure virtual base class for all geometry creators.
Definition: CreatorBase.h:28
GeometryTypes
Flag indiciating the type of geometry to be used.
Abstract base class for different kinds of events.