EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4Example03Subsystem.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file G4Example03Subsystem.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef G4EXAMPLE03SUBSYSTEM_H
4 #define G4EXAMPLE03SUBSYSTEM_H
5 
7 
8 #include <array> // for array
9 #include <string>
10 
12 class PHCompositeNode;
13 class PHG4Detector;
14 class PHG4DisplayAction;
15 class PHG4SteppingAction;
16 
28 {
29  public:
31  G4Example03Subsystem(const std::string& name = "Example03");
32 
34  virtual ~G4Example03Subsystem();
35 
41  virtual int InitRunSubsystem(PHCompositeNode*);
42 
44 
48  virtual int process_event(PHCompositeNode*);
49 
51  virtual PHG4Detector* GetDetector() const;
52 
55  virtual void Print(const std::string& what = "ALL") const;
56 
58 
59  void set_color(const double red, const double green, const double blue, const double alpha = 1.)
60  {
61  m_ColorArray[0] = red;
62  m_ColorArray[1] = green;
63  m_ColorArray[2] = blue;
64  m_ColorArray[3] = alpha;
65  }
66 
67  private:
68  // \brief Set default parameter values
69  void SetDefaultParameters();
70 
72 
74 
76 
78 
79 
80 
83  std::array<double, 4> m_ColorArray;
84 };
85 
86 #endif // G4EXAMPLE03SUBSYSTEM_H