test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MaterialBudgetAction.h
Go to the documentation of this file.
1 #ifndef Validation_Geometry_MaterialBudgetAction_h
2 #define Validation_Geometry_MaterialBudgetAction_h
3 
4 #include <string>
5 #include <vector>
6 
14 
18 
19 #include <CLHEP/Vector/LorentzVector.h>
20 
21 class BeginOfTrack;
22 class BeginOfRun;
23 class BeginOfEvent;
24 class G4Step;
25 class EndOfTrack;
26 class G4StepPoint;
27 class G4VTouchable;
28 
30  public Observer<const BeginOfRun*>,
31  public Observer<const BeginOfTrack*>,
32  public Observer<const G4Step*>,
33  public Observer<const EndOfTrack*>
34 {
35  public:
37  virtual ~MaterialBudgetAction();
38 
39  private:
40  MaterialBudgetAction(const MaterialBudgetAction&); // stop default
41 
42  const MaterialBudgetAction& operator=(const MaterialBudgetAction&); // stop default
43 
44  void update(const BeginOfRun*);
45  void update(const BeginOfTrack*);
46  void update(const G4Step*);
47  void update(const EndOfTrack*);
48 
49  bool CheckTouchableInSelectedVolumes( const G4VTouchable* touch );
50  bool StopAfterProcess( const G4Step* aStep );
51 
52  void save( const G4Step* aStep );
53  std::string getSubDetectorName( G4StepPoint* aStepPoint );
54  std::string getPartName( G4StepPoint* aStepPoint );
61  bool storeDecay;
62  double Ekin;
64 
65  std::vector<G4String> theVolumeList;
66  G4String theProcessToStop;
68 };
69 
70 #endif
bool CheckTouchableInSelectedVolumes(const G4VTouchable *touch)
void save(const G4Step *aStep)
MaterialBudgetAction(const edm::ParameterSet &)
void update(const BeginOfRun *)
This routine will be called when the appropriate signal arrives.
MaterialBudgetTxt * theTxt
const MaterialBudgetAction & operator=(const MaterialBudgetAction &)
MaterialBudgetFormat * theHistos
MaterialBudgetData * theData
bool StopAfterProcess(const G4Step *aStep)
std::string getPartName(G4StepPoint *aStepPoint)
std::vector< G4String > theVolumeList
std::string getSubDetectorName(G4StepPoint *aStepPoint)
MaterialBudgetTree * theTree