HerdSoftware  0.1.1
BarPsdBuilder.h
Go to the documentation of this file.
1 /*
2  * BarPsdBuilder.h
3  *
4  * Created on: 23 Apr 2020
5  * Author: Nicola Mori
6  */
7 
10 #ifndef BARPSDBUILDER_H_
11 #define BARPSDBUILDER_H_
12 
14 
15 #include <vector>
16 
17 class G4LogicalVolume;
18 
38 public:
39  enum class Type { TOP, SIDE };
40 
46  BarPsdBuilder(PSDOptions &options, Type type);
47 
52  G4LogicalVolume *Build();
53 
59  const std::vector<float> &NormalPositions() const { return _normPos; }
60 
61 private:
62  // Internal parameters
65 
66  std::vector<float> _normPos; // position of each layer along the normal, IN INVERSE ORDER FOR SIDE!!!
67 };
68 
69 #endif /* BARPSDBUILDER_H_ */
BarPsdBuilder(PSDOptions &options, Type type)
Constructor.
Definition: BarPsdBuilder.cpp:22
G4LogicalVolume * Build()
Builds the bars PSD.
Definition: BarPsdBuilder.cpp:24
PSDOptions & _options
Definition: BarPsdBuilder.h:63
std::vector< float > _normPos
Definition: BarPsdBuilder.h:66
Type _type
Definition: BarPsdBuilder.h:64
Type
Definition: BarPsdBuilder.h:39
const std::vector< float > & NormalPositions() const
Get the normal positions of all layers.
Definition: BarPsdBuilder.h:59
Definition: DetStructs.h:141
Builder class for bars PSD.
Definition: BarPsdBuilder.h:37