Belle II Software  release-05-01-25
CLAWSCreator.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010-2015 Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Martin Ritter, Igal Jaegle *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #ifndef CLAWSCREATOR_H_
12 #define CLAWSCREATOR_H_
13 
14 #include <geometry/CreatorBase.h>
15 #include <simulation/kernel/SensitiveDetectorBase.h>
16 
17 class G4LogicalVolume;
18 class G4Material;
19 class G4UserLimits;
20 
21 
22 namespace Belle2 {
28  namespace claws {
29 
32  public:
37  CLAWSCreator(Simulation::SensitiveDetectorBase* sensitive = nullptr);
38  virtual ~CLAWSCreator();
48  void createShape(const std::string& prefix, const GearDir& params,
49  G4LogicalVolume* parent, double roffset, bool check);
50 
51  virtual void create(const GearDir& content, G4LogicalVolume& topVolume,
53  protected:
57  G4Material* m_topMaterial{nullptr};
59  G4UserLimits* m_stepLength{nullptr};
60  };
61 
62  }
64 }
65 
66 #endif /* CLAWSCREATOR_H_ */
Belle2::claws::CLAWSCreator::m_topMaterial
G4Material * m_topMaterial
pointer to the material in the top volume to use as default
Definition: CLAWSCreator.h:57
Belle2::claws::CLAWSCreator::m_stepLength
G4UserLimits * m_stepLength
pointer to the G4Userlimits to set for sensitive volumes (if any)
Definition: CLAWSCreator.h:59
Belle2::Simulation::SensitiveDetectorBase
Base class for all Sensitive Detectors to create hits during simulation.
Definition: SensitiveDetectorBase.h:32
Belle2::claws::CLAWSCreator::create
virtual void create(const GearDir &content, G4LogicalVolume &topVolume, geometry::GeometryTypes type)
Function to actually create the geometry, has to be overridden by derived classes.
Definition: CLAWSCreator.cc:135
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::GearDir
GearDir is the basic class used for accessing the parameter store.
Definition: GearDir.h:41
Belle2::claws::CLAWSCreator::createShape
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: CLAWSCreator.cc:59
Belle2::geometry::CreatorBase
Pure virtual base class for all geometry creators.
Definition: CreatorBase.h:31
Belle2::claws::CLAWSCreator::m_sensitive
Simulation::SensitiveDetectorBase * m_sensitive
pointer to the sensitive detector implementation
Definition: CLAWSCreator.h:55
Belle2::claws::CLAWSCreator
The creator for the CLAWS geometry.
Definition: CLAWSCreator.h:31
Belle2::geometry::GeometryTypes
GeometryTypes
Flag indiciating the type of geometry to be used.
Definition: GeometryManager.h:39
Belle2::claws::CLAWSCreator::CLAWSCreator
CLAWSCreator(Simulation::SensitiveDetectorBase *sensitive=nullptr)
Constructor.
Definition: CLAWSCreator.cc:46