k4SimGeant4
Loading...
Searching...
No Matches
MaterialScan_2D_genericAngle.h
Go to the documentation of this file.
1#include "k4Interface/IGeoSvc.h"
2
3#include "GaudiKernel/RndmGenerators.h"
4#include "GaudiKernel/Service.h"
5
17class MaterialScan_2D_genericAngle : public Service {
18public:
19 explicit MaterialScan_2D_genericAngle(const std::string& name, ISvcLocator* svcLoc);
20
21 virtual StatusCode initialize();
22 virtual StatusCode finalize();
24
25private:
27 Gaudi::Property<std::string> m_filename{this, "filename", "", "file name to save the tree to"};
29 ServiceHandle<IGeoSvc> m_geoSvc;
30
32 Gaudi::Property<double> m_angleBinning{this, "angleBinning", 0.05, "eta/theta/cosTheta/thetaRad bin size"};
34 Gaudi::Property<double> m_angleMax{this, "angleMax", 6, "maximum eta/theta/cosTheta/thetaRad value"};
36 Gaudi::Property<double> m_angleMin{this, "angleMin", -6, "minimum eta/theta/cosTheta/thetaRad value"};
38 Gaudi::Property<double> m_nPhi{this, "nPhi", 100,
39 "number of phi values to run over, evenly distributed from 0 to 2 pi"};
41 Gaudi::Property<std::string> m_angleDef{
42 this, "angleDef", "eta",
43 "angle definition to use: 'eta', 'theta' (in degrees), 'cosTheta' or 'thetaRad' (in rad), default: 'eta'"};
45 Gaudi::Property<std::string> m_envelopeName{this, "envelopeName", "world",
46 "name of the envelope within which the material is measured"};
48 Rndm::Numbers m_flatAngleDist;
49};
MaterialScan_2D_genericAngle.h.
Definition MaterialScan_2D_genericAngle.h:17
Gaudi::Property< double > m_nPhi
number of phi values to run over, evenly distributed from 0 to 2 pi
Definition MaterialScan_2D_genericAngle.h:38
Rndm::Numbers m_flatAngleDist
Flat random number generator.
Definition MaterialScan_2D_genericAngle.h:48
Gaudi::Property< std::string > m_envelopeName
Name of the envelope within which the material is measured (by default: world volume)
Definition MaterialScan_2D_genericAngle.h:45
virtual StatusCode finalize()
Definition MaterialScan_2D_genericAngle.cpp:133
Gaudi::Property< std::string > m_filename
name of the output file
Definition MaterialScan_2D_genericAngle.h:27
Gaudi::Property< std::string > m_angleDef
angle definition to use: eta, theta, cosTheta or thetaRad default: eta
Definition MaterialScan_2D_genericAngle.h:41
virtual StatusCode initialize()
Definition MaterialScan_2D_genericAngle.cpp:22
Gaudi::Property< double > m_angleMin
Minimum eta/theta/cosTheta/thetaRad until which to scan.
Definition MaterialScan_2D_genericAngle.h:36
Gaudi::Property< double > m_angleBinning
Step size in eta/theta/cosTheta/thetaRad.
Definition MaterialScan_2D_genericAngle.h:32
MaterialScan_2D_genericAngle(const std::string &name, ISvcLocator *svcLoc)
Definition MaterialScan_2D_genericAngle.cpp:19
virtual ~MaterialScan_2D_genericAngle()
Definition MaterialScan_2D_genericAngle.h:23
ServiceHandle< IGeoSvc > m_geoSvc
Handle to the geometry service from which the detector is retrieved.
Definition MaterialScan_2D_genericAngle.h:29
Gaudi::Property< double > m_angleMax
Maximum eta/theta/cosTheta/thetaRad until which to scan.
Definition MaterialScan_2D_genericAngle.h:34