HerdSoftware  0.1.1
Public Types | Public Member Functions | Private Attributes | List of all members
BarPsdBuilder Class Reference

Builder class for bars PSD. More...

#include <simulation/geometry/parametric/BarPsdBuilder.h>

Public Types

enum  Type { Type::TOP, Type::SIDE }
 

Public Member Functions

 BarPsdBuilder (PSDOptions &options, Type type)
 Constructor. More...
 
G4LogicalVolume * Build ()
 Builds the bars PSD. More...
 
const std::vector< float > & NormalPositions () const
 Get the normal positions of all layers. More...
 

Private Attributes

PSDOptions_options
 
Type _type
 
std::vector< float > _normPos
 

Detailed Description

Builder class for bars PSD.

This class builds the bars PSD and provides some utility methods. It handles both the construction of top and side detectors. It implements quirks to deal with some historical differences for the conventions on side and top:

The code implements the conventions for the sides, and quirks for top are placed where needed.

Member Enumeration Documentation

◆ Type

enum BarPsdBuilder::Type
strong
Enumerator
TOP 
SIDE 

Constructor & Destructor Documentation

◆ BarPsdBuilder()

BarPsdBuilder::BarPsdBuilder ( PSDOptions options,
Type  type 
)

Constructor.

Parameters
optionsThe PSD options.
typeThe type of PSD to be built (top or side).

Member Function Documentation

◆ Build()

G4LogicalVolume * BarPsdBuilder::Build ( )

Builds the bars PSD.

Returns
the logical volume containing the bars PSD.

◆ NormalPositions()

const std::vector<float>& BarPsdBuilder::NormalPositions ( ) const
inline

Get the normal positions of all layers.

Returns
the vector of layer positions along the normal

Member Data Documentation

◆ _normPos

std::vector<float> BarPsdBuilder::_normPos
private

◆ _options

PSDOptions& BarPsdBuilder::_options
private

◆ _type

Type BarPsdBuilder::_type
private

The documentation for this class was generated from the following files: