EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
EicToyModelDetector.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file EicToyModelDetector.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef _EIC_TOY_MODEL_DETECTOR_
4 #define _EIC_TOY_MODEL_DETECTOR_
5 
6 #include <g4main/PHG4Detector.h>
7 
8 #include <set>
9 #include <string> // for string
10 
11 class G4LogicalVolume;
12 class G4VPhysicalVolume;
13 class PHCompositeNode;
14 class PHG4Subsystem;
15 class PHParameters;
16 
18 {
19  public:
21  EicToyModelDetector(PHG4Subsystem *subsys, PHCompositeNode *Node, PHParameters *parameters, const std::string &dnam);
22 
24  virtual ~EicToyModelDetector() {}
25 
27  void ConstructMe(G4LogicalVolume *world) override;
28 
29  void Print(const std::string &what = "ALL") const override;
30 
32 
33  int IsInDetector(G4VPhysicalVolume *) const;
35 
36  void SuperDetector(const std::string &name) { m_SuperDetector = name; }
37  const std::string SuperDetector() const { return m_SuperDetector; }
38 
39  private:
41 
42  // active volumes
43  std::set<G4VPhysicalVolume *> m_PhysicalVolumesSet;
44 
45  std::string m_SuperDetector;
46 };
47 
48 #endif