CMS 3D CMS Logo

HGCalTBMB.h
Go to the documentation of this file.
1 #ifndef SimG4CMS_HGCalTestBeam_HGCalTBMB_h
2 #define SimG4CMS_HGCalTestBeam_HGCalTBMB_h
3 
7 
8 class BeginOfTrack;
9 class G4Step;
10 class EndOfTrack;
11 class G4VTouchable;
12 
13 #include <TH1F.h>
14 #include <string>
15 #include <vector>
16 
17 class HGCalTBMB : public SimWatcher,
18  public Observer<const BeginOfTrack*>,
19  public Observer<const G4Step*>,
20  public Observer<const EndOfTrack*> {
21 
22 public:
23 
25  virtual ~HGCalTBMB();
26 
27 private:
28 
29  HGCalTBMB(const HGCalTBMB&); // stop default
30  const HGCalTBMB& operator=(const HGCalTBMB&); // ...
31 
32  void update(const BeginOfTrack*);
33  void update(const G4Step*);
34  void update(const EndOfTrack*);
35 
36  bool stopAfter(const G4Step*);
37  int findVolume(const G4VTouchable* touch, bool stop) const;
38 
39  std::vector<std::string> listNames_;
41  double stopZ_;
42  unsigned int nList_;
43  std::vector<double> radLen_, intLen_, stepLen_;
44  std::vector<TH1D*> me100_, me200_, me300_;
45 };
46 
47 #endif
int findVolume(const G4VTouchable *touch, bool stop) const
Definition: HGCalTBMB.cc:143
bool stopAfter(const G4Step *)
Definition: HGCalTBMB.cc:126
double stopZ_
Definition: HGCalTBMB.h:41
std::vector< double > intLen_
Definition: HGCalTBMB.h:43
const HGCalTBMB & operator=(const HGCalTBMB &)
std::string stopName_
Definition: HGCalTBMB.h:40
void update(const BeginOfTrack *)
This routine will be called when the appropriate signal arrives.
Definition: HGCalTBMB.cc:62
std::vector< TH1D * > me100_
Definition: HGCalTBMB.h:44
unsigned int nList_
Definition: HGCalTBMB.h:42
std::vector< TH1D * > me300_
Definition: HGCalTBMB.h:44
HGCalTBMB(const edm::ParameterSet &)
Definition: HGCalTBMB.cc:19
std::vector< TH1D * > me200_
Definition: HGCalTBMB.h:44
std::vector< double > radLen_
Definition: HGCalTBMB.h:43
virtual ~HGCalTBMB()
Definition: HGCalTBMB.cc:59
std::vector< std::string > listNames_
Definition: HGCalTBMB.h:39
std::vector< double > stepLen_
Definition: HGCalTBMB.h:43