ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHFieldConfigv2.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHFieldConfigv2.h
1 // $Id: $
2 
11 #ifndef PHFIELD_PHFIELDCONFIGV2_H
12 #define PHFIELD_PHFIELDCONFIGV2_H
13 
14 #include "PHFieldConfig.h"
15 
16 #include <iostream>
17 
18 class PHObject;
19 
23 {
24  public:
27  double field_mag_x,
28  double field_mag_y,
29  double field_mag_z);
30 
33  : PHFieldConfigv2(0, 0, 0)
34  {
35  }
36 
37  ~PHFieldConfigv2() override {}
38 
40  PHObject* CloneMe() const override { return new PHFieldConfigv2(*this); }
41 
45  void
46  identify(std::ostream& os = std::cout) const override;
47 
49  void Reset() override {}
50 
52  int
53  isValid() const override { return 3; }
54 
56  {
57  return kFieldUniform;
58  }
59 
61  double get_field_mag_x() const override
62  {
63  return field_mag_x_;
64  }
65 
67  void set_field_mag_x(double fieldMagX) override
68  {
69  field_mag_x_ = fieldMagX;
70  }
71 
73  double get_field_mag_y() const override
74  {
75  return field_mag_y_;
76  }
77 
79  void set_field_mag_y(double fieldMagY) override
80  {
81  field_mag_y_ = fieldMagY;
82  }
83 
85  double get_field_mag_z() const override
86  {
87  return field_mag_z_;
88  }
89 
91  void set_field_mag_z(double fieldMagZ) override
92  {
93  field_mag_z_ = fieldMagZ;
94  }
95 
96  protected:
97  double field_mag_x_;
98  double field_mag_y_;
99  double field_mag_z_;
100 
101  ClassDefOverride(PHFieldConfigv2, 1)
102 };
103 
104 #endif