Belle II Software development
GeoARICHBtestCreator.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 GEOARICHBTESTCREATOR_H
10#define GEOARICHBTESTCREATOR_H
11
12
13#include <geometry/CreatorBase.h>
14#include <framework/gearbox/GearDir.h>
15
16class G4LogicalVolume;
17class G4Material;
18namespace Belle2 {
23 namespace arich {
24
26 class SensitiveAero;
27
28
29
30
33
34 public:
35
38
41
43 virtual ~GeoARICHBtestCreator();
44
47
56
57 virtual void create(const GearDir& content, G4LogicalVolume& topVolume, geometry::GeometryTypes type);
58
59 protected:
61 void createBtestGeometry(const GearDir& content, G4LogicalVolume& topVolume);
62
64 G4LogicalVolume* buildModule(GearDir Module);
65
67 double getAvgRINDEX(G4Material* material);
72
73 //int isBeamBkgStudy;
75 G4Material* createAerogel(const char* aeroname, double rind, double trl);
76 private:
78 int m_runno ;
80 std::string m_author;
82 int m_neve;
84 std::string m_runtype;
86 std::string m_hapdID;
88 std::string m_aerogelID;
90 std::string m_mirrorID;
92 double m_rotation;
94 double m_rx;
96 double m_ry;
98 std::string m_mytype;
100 std::string m_daqqa;
102 std::string m_comment;
104 std::string m_datum;
105
111 double m_framedx;
117 std::string m_comment1;
118
120 std::vector<double> m_agelrefind;
122 std::vector<double> m_agelthickness;
124 std::vector<double> m_ageltrlen;
125 };
126
127 }
129}
130
131#endif /* GEOARICHBTESTCREATOR_H */
GearDir is the basic class used for accessing the parameter store.
Definition GearDir.h:31
Base class for Modules.
Definition Module.h:72
std::string m_comment
comment in the runlog
int m_aerosupport
Type of aerogel support - not used at the moment.
std::string m_aerogelID
ID of the aerogel configuration setup.
double m_rotation1
rotation angle of the frame
std::string m_runtype
Type of the beamtest run.
std::vector< double > m_agelrefind
vector of aerogel refractive indices
void createBtestGeometry(const GearDir &content, G4LogicalVolume &topVolume)
Creation of the beamtest geometry.
G4Material * createAerogel(const char *aeroname, double rind, double trl)
create aerogel material
double m_ry
y shift of the prototype ARICH frame
std::vector< double > m_ageltrlen
vector of aerogel transmission lengths
virtual ~GeoARICHBtestCreator()
The destructor of the GeoPXDCreator class.
G4LogicalVolume * buildModule(GearDir Module)
Build the module.
double getAvgRINDEX(G4Material *material)
Get the average refractive index if the material.
std::string m_mirrorID
ID of the mirror configuration setup.
virtual void create(const GearDir &content, G4LogicalVolume &topVolume, geometry::GeometryTypes type)
Creates the ROOT Objects for the ARICH Beamtest 2011 geometry.
double m_aerogeldx
shift of the aerogel center
std::string m_datum
datum of the runlog
SensitiveAero * m_sensitiveAero
pointer to the sesnitive aerogel
std::string m_author
Beamtest runlog record author.
GeoARICHBtestCreator()
Constructor of the GeoPXDCreator class.
std::string m_daqqa
classification of the run
std::string m_hapdID
ID of the HAPD configuration setup.
std::vector< double > m_agelthickness
vector of aerogel thicknesses
double m_rotation
rotation angle of the setup
GeoARICHBtestCreator(const GeoARICHBtestCreator &)=delete
Copy constructor (disabled).
GeoARICHBtestCreator & operator=(const GeoARICHBtestCreator &)=delete
Operator = (disabled).
SensitiveDetector * m_sensitive
pointer to the sensitive detector
double m_rx
x shift of the prototype ARICH frame
int m_neve
Number of event in the beamtest run.
int m_configuration
configuration number of the HAPD
This is optional (temporary) class that provides information on track parameters on aerogel plane,...
The Class for ARICH Sensitive Detector.
Pure virtual base class for all geometry creators.
Definition CreatorBase.h:28
GeometryTypes
Flag indicating the type of geometry to be used.
Abstract base class for different kinds of events.