ACTARSim
ACTAR TPC Simulation Reference Guide
ActarSimPlaDetectorConstruction.hh
Go to the documentation of this file.
1 // - AUTHOR: Hector Alvarez-Pol 04/2008
2 /******************************************************************
3  * Copyright (C) 2005-2016, Hector Alvarez-Pol *
4  * All rights reserved. *
5  * *
6  * License according to GNU LESSER GPL (see lgpl-3.0.txt). *
7  * For the list of contributors see CREDITS. *
8  ******************************************************************/
9 
10 #ifndef ActarSimPlaDetectorConstruction_h
11 #define ActarSimPlaDetectorConstruction_h 1
12 
13 #include "globals.hh"
14 #include "G4ThreeVector.hh"
15 
16 class G4LogicalVolume;
17 class G4VPhysicalVolume;
18 class G4Material;
19 //class ActarSimPlaDetectorMessenger;
21 
23 private:
24  G4Material* plaBulkMaterial; ///< Materials
25  //ActarSimPlaDetectorMessenger* plaMessenger; //pointer to the Messenger
26  ActarSimDetectorConstruction* detConstruction; ///< pointer to the global detector
27 
28  G4VPhysicalVolume* ConstructPla(G4LogicalVolume*);
29 
30  /// 6 bits to indicate which sci wall is present (1) or absent (0) order is:
31  /// - bit1 (lsb) beam output wall
32  /// - bit2 lower (gravity based) wall
33  /// - bit3 upper (gravity based) wall
34  /// - bit4 left (from beam point of view) wall
35  /// - bit5 right (from beam point of view) wall
36  /// - bit6 (msb) beam entrance wall
37  G4int sideCoverage;
38 
39  G4double xBoxPlaHalfLength; ///< X Half-length of the sci (x is horizontal)
40  G4double yBoxPlaHalfLength; ///< Y Half-length of the sci (y is vertical)
41  G4double zBoxPlaHalfLength; ///< Z Half-length of the sci (z is along beam)
42 
43 public:
46 
47  G4VPhysicalVolume* Construct(G4LogicalVolume*);
48 
49  void SetPlaBulkMaterial (G4String);
50  void SetSideCoverage(G4int cov){sideCoverage = cov;}
51  void SetXBoxPlaHalfLength(G4double xBox){xBoxPlaHalfLength=xBox;}
52  void SetYBoxPlaHalfLength(G4double yBox){yBoxPlaHalfLength=yBox;}
53  void SetZBoxPlaHalfLength(G4double zBox){zBoxPlaHalfLength=zBox;}
54 
55  G4Material* GetPlaBulkMaterial() {return plaBulkMaterial;}
56 
57  G4int GetSideCoverage(){return sideCoverage;}
61 
62  void UpdateGeometry();
64 };
65 #endif
void SetPlaBulkMaterial(G4String)
Set the material the scintillator bulk is made of.
ActarSimPlaDetectorConstruction(ActarSimDetectorConstruction *)
Constructor. Sets the material and the pointer to the Messenger.
G4double zBoxPlaHalfLength
Z Half-length of the sci (z is along beam)
void UpdateGeometry()
Updates Scintillator detector.
G4double yBoxPlaHalfLength
Y Half-length of the sci (y is vertical)
G4double xBoxPlaHalfLength
X Half-length of the sci (x is horizontal)
ActarSimDetectorConstruction * detConstruction
pointer to the global detector
G4VPhysicalVolume * Construct(G4LogicalVolume *)
Wrap for the construction functions within the TOF.
G4VPhysicalVolume * ConstructPla(G4LogicalVolume *)
Chamber Y,Z length.
void PrintDetectorParameters()
Prints Scintillator detector parameters. To be filled.