EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4OuterHcalFieldSetup.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHG4OuterHcalFieldSetup.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 // $Id: $
4 
13 #ifndef G4DETECTORS_PHG4OUTERHCALFIELDSETUP_H
14 #define G4DETECTORS_PHG4OUTERHCALFIELDSETUP_H
15 
16 #include <Geant4/G4Types.hh> // for G4double, G4int
17 
18 class G4ChordFinder;
19 class G4FieldManager;
20 class G4Mag_UsualEqRhs;
21 class G4MagIntegratorStepper;
22 class G4MagneticField;
23 
28 {
29 public:
30  PHG4OuterHcalFieldSetup(G4int steelPlates, G4double scintiGap,
31  G4double tiltAngle);
32  virtual
34 
35  G4FieldManager*
37  {
38  return fFieldManagerGap;
39  }
40 
41  void
42  set_Field_Manager_Gap(G4FieldManager* fieldManagerGap)
43  {
44  fFieldManagerGap = fieldManagerGap;
45  }
46 
47  G4FieldManager*
49  {
50  return fFieldManagerIron;
51  }
52 
53  void
54  set_Field_Manager_Iron(G4FieldManager* fieldManagerIron)
55  {
56  fFieldManagerIron = fieldManagerIron;
57  }
58 
59  G4double
60  get_Min_Step() const
61  {
62  return fMinStep;
63  }
64 
65  void
66  set_Min_Step(G4double minStep)
67  {
68  fMinStep = minStep;
69  }
70 
71  G4int
73  {
74  return n_steel_plates;
75  }
76 
77  void
78  set_steel_plates(G4int steelPlates)
79  {
80  n_steel_plates = steelPlates;
81  }
82 
83  G4double
85  {
86  return scinti_gap;
87  }
88 
89  void
90  set_scinti_gap(G4double scintiGap)
91  {
92  scinti_gap = scintiGap;
93  }
94 
95  G4double
97  {
98  return tilt_angle;
99  }
100 
101  void
102  set_tilt_angle(G4double tiltAngle)
103  {
104  tilt_angle = tiltAngle;
105  }
106 
107 private:
108 
109  G4FieldManager* fFieldManagerIron;
110  G4FieldManager* fFieldManagerGap;
111  G4Mag_UsualEqRhs* fEquationIron;
112  G4Mag_UsualEqRhs* fEquationGap;
113  G4ChordFinder* fChordFinderIron;
114  G4ChordFinder* fChordFinderGap;
115  G4MagneticField* fEMfieldIron;
116  G4MagneticField* fEMfieldGap;
117  G4MagIntegratorStepper* fStepperIron;
118  G4MagIntegratorStepper* fStepperGap;
119 
120  G4double fMinStep;
121 
123  G4double scinti_gap;
124  G4double tilt_angle;
125 };
126 
127 #endif /* PHG4OUTERHCALFIELDSETUP_H_ */