CMS 3D CMS Logo

HGCScintSD.h
Go to the documentation of this file.
1 #ifndef SimG4CMS_HGCScintSD_h
2 #define SimG4CMS_HGCScintSD_h
3 // File: HGCScintSD.h
5 // Description: Stores hits of the High Granularity Calorimeter (HGC) in the
6 // appropriate container (post TDR version)
8 
12 
13 #include <string>
14 
15 class HGCalDDDConstants;
16 class G4LogicalVolume;
17 class G4Step;
18 
19 class HGCScintSD : public CaloSD, public Observer<const BeginOfJob *> {
20 public:
21  HGCScintSD(const std::string &,
22  const HGCalDDDConstants *,
24  edm::ParameterSet const &,
25  const SimTrackManager *);
26  ~HGCScintSD() override = default;
27 
28  uint32_t setDetUnitId(const G4Step *step) override;
29 
30 protected:
31  double getEnergyDeposit(const G4Step *) override;
32  using CaloSD::update;
33  void update(const BeginOfJob *) override;
34  void initRun() override;
35  bool filterHit(CaloG4Hit *, double) override;
36 
37 private:
38  uint32_t setDetUnitId(int, int, int, int, G4ThreeVector &);
39  bool isItinFidVolume(const G4ThreeVector &);
40 
42  std::unique_ptr<HGCalNumberingScheme> numberingScheme_;
49  bool useBirk_;
52  std::vector<int> tiles_;
53 };
54 
55 #endif // HGCScintSD_h
double birk2_
Definition: HGCScintSD.h:50
HGCalGeometryMode::GeometryMode geom_mode_
Definition: HGCScintSD.h:45
int levelT2_
Definition: HGCScintSD.h:47
double birk1_
Definition: HGCScintSD.h:50
HGCScintSD(const std::string &, const HGCalDDDConstants *, const SensitiveDetectorCatalog &, edm::ParameterSet const &, const SimTrackManager *)
Definition: HGCScintSD.cc:32
Definition: CaloSD.h:40
double distanceFromEdge_
Definition: HGCScintSD.h:46
std::vector< int > tiles_
Definition: HGCScintSD.h:52
uint32_t setDetUnitId(const G4Step *step) override
Definition: HGCScintSD.cc:149
int levelT1_
Definition: HGCScintSD.h:47
bool fiducialCut_
Definition: HGCScintSD.h:48
bool useBirk_
Definition: HGCScintSD.h:49
const HGCalDDDConstants * hgcons_
Definition: HGCScintSD.h:41
double weight_
Definition: HGCScintSD.h:50
bool isItinFidVolume(const G4ThreeVector &)
Definition: HGCScintSD.cc:249
void initRun() override
Definition: HGCScintSD.cc:238
double getEnergyDeposit(const G4Step *) override
Definition: HGCScintSD.cc:116
double eminHit_
Definition: HGCScintSD.h:46
std::string fileName_
Definition: HGCScintSD.h:51
Detector
Definition: DetId.h:24
double slopeMin_
Definition: HGCScintSD.h:46
std::unique_ptr< HGCalNumberingScheme > numberingScheme_
Definition: HGCScintSD.h:42
int firstLayer_
Definition: HGCScintSD.h:47
std::string nameX_
Definition: HGCScintSD.h:44
~HGCScintSD() override=default
DetId::Detector mydet_
Definition: HGCScintSD.h:43
step
Definition: StallMonitor.cc:98
void update(const BeginOfJob *) override
This routine will be called when the appropriate signal arrives.
Definition: HGCScintSD.cc:220
void update(const BeginOfRun *) override
This routine will be called when the appropriate signal arrives.
Definition: CaloSD.cc:688
double birk3_
Definition: HGCScintSD.h:50
bool storeAllG4Hits_
Definition: HGCScintSD.h:48
bool filterHit(CaloG4Hit *, double) override
Definition: HGCScintSD.cc:240