GGS(GenericGEANT4Simulation)Software  2.7.0
 All Data Structures Namespaces Files Functions Variables Typedefs Macros
GGSMultiSensitiveDetector.h
Go to the documentation of this file.
1 /*
2  * GGSMultiSensitiveDetector.h
3  *
4  * Created on: 02 Aug2013
5  * Author: Nicola Mori
6  */
7 
10 #ifndef GGSMULTISENSITIVEDETECTOR_H_
11 #define GGSMULTISENSITIVEDETECTOR_H_
12 
13 #include "G4VSensitiveDetector.hh"
14 
15 #include <vector>
16 
39 class GGSMultiSensitiveDetector : public G4VSensitiveDetector {
40 public:
42  GGSMultiSensitiveDetector(G4String name);
43 
46 
51  void AddSensitiveDetector(G4VSensitiveDetector *sd);
52 
58  G4VSensitiveDetector *GetSensitiveDetector(const G4String &sdName);
59 
64  const std::vector<G4VSensitiveDetector *> &GetListOfSensitiveDetectors() { return _sdVector; }
65 
73  G4bool ProcessHits(G4Step *, G4TouchableHistory *);
74 
76  void clear();
77 
84  void Activate(G4bool activeFlag);
85 
87  void SetROgeometry(G4VReadOutGeometry *value);
88 
90  void SetFilter(G4VSDFilter *value);
91 
92 private:
93  std::vector<G4VSensitiveDetector *> _sdVector;
94 };
95 
96 #endif /* GGSMULTISENSITIVEDETECTOR_H_ */
GGSMultiSensitiveDetector(G4String name)
Constructor.
void Activate(G4bool activeFlag)
Enables or disables the multidetector.
const std::vector< G4VSensitiveDetector * > & GetListOfSensitiveDetectors()
Retrieves a list of sensitive detectors collected into this object.
void clear()
Calls clear for all the detectors in the multidetector.
A multiple sensitive detector.
void SetFilter(G4VSDFilter *value)
Calls SetFilter for all the detectors in the multidetector.
G4VSensitiveDetector * GetSensitiveDetector(const G4String &sdName)
Retrieves a detector.
void SetROgeometry(G4VReadOutGeometry *value)
Calls SetROgeometry for all the detectors in the multidetector.
G4bool ProcessHits(G4Step *, G4TouchableHistory *)
Empty method.
void AddSensitiveDetector(G4VSensitiveDetector *sd)
Adds a new sensitive detector to the multidetector.