Belle II Software  release-05-01-25
CsiCreator.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Martin Ritter, Igal Jaegle, Alexandre Beaulieu *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #ifndef CSICREATOR_H_
12 #define CSICREATOR_H_
13 
14 #include <geometry/CreatorBase.h>
15 #include <G4AssemblyVolume.hh>
16 #include <G4Transform3D.hh>
17 #include <string>
18 
19 class G4LogicalVolume;
20 
21 namespace Belle2 {
27  namespace csi {
28 
29  class SensitiveDetector;
30 
33  public:
34  CsiCreator();
35  virtual ~CsiCreator();
36  virtual void create(const GearDir& content, G4LogicalVolume& topVolume, geometry::GeometryTypes type);
37 
38  protected:
42  void BuildEnclosure(const GearDir& content, G4AssemblyVolume* assembly, std::string side, int iEnclosure);
43 
45  void PutCrystal(const GearDir& content, G4AssemblyVolume* assembly, G4Transform3D position, int iEnclosure, int iCry);
46  };
47  }
49 }
50 
51 #endif /* CSICREATOR_H_ */
Belle2::csi::CsiCreator::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: CsiCreator.cc:68
Belle2::csi::SensitiveDetector
Sensitive Detector implementation of the CSI detector.
Definition: SensitiveDetector.h:32
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::csi::CsiCreator::m_sensitive
SensitiveDetector * m_sensitive
SensitiveDetector CSI.
Definition: CsiCreator.h:39
Belle2::GearDir
GearDir is the basic class used for accessing the parameter store.
Definition: GearDir.h:41
Belle2::csi::CsiCreator::PutCrystal
void PutCrystal(const GearDir &content, G4AssemblyVolume *assembly, G4Transform3D position, int iEnclosure, int iCry)
Builds the crystals and their wrapping (foil)
Definition: CsiCreator.cc:114
Belle2::geometry::CreatorBase
Pure virtual base class for all geometry creators.
Definition: CreatorBase.h:31
Belle2::csi::CsiCreator::BuildEnclosure
void BuildEnclosure(const GearDir &content, G4AssemblyVolume *assembly, std::string side, int iEnclosure)
Builds the crystals enclosures.
Definition: CsiCreator.cc:215
Belle2::geometry::GeometryTypes
GeometryTypes
Flag indiciating the type of geometry to be used.
Definition: GeometryManager.h:39
Belle2::csi::CsiCreator
The creator for the CSI geometry.
Definition: CsiCreator.h:32