ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHFieldConfigv1.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHFieldConfigv1.h
1 // $Id: $
2 
11 #ifndef PHFIELD_PHFIELDCONFIGV1_H
12 #define PHFIELD_PHFIELDCONFIGV1_H
13 
14 #include "PHFieldConfig.h"
15 
16 #include <iostream>
17 #include <string>
18 
19 class PHObject;
20 
24 {
25  public:
27  FieldConfigTypes field_config,
28  const std::string& filename,
29  double magfield_rescale = 1.);
30 
33  : PHFieldConfigv1(kFieldInvalid, "INVALID FILE")
34  {
35  }
36 
37  ~PHFieldConfigv1() override {}
38 
40  PHObject* CloneMe() const override { return new PHFieldConfigv1(*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;
54 
56  {
57  return field_config_;
58  }
59  void set_field_config(FieldConfigTypes fieldConfig) override
60  {
61  field_config_ = fieldConfig;
62  }
63 
64  const std::string& get_filename() const override
65  {
66  return filename_;
67  }
68 
69  void set_filename(const std::string& filename) override
70  {
72  }
73 
74  double get_magfield_rescale() const override
75  {
76  return magfield_rescale_;
77  }
78 
79  void set_magfield_rescale(double magfieldRescale) override
80  {
81  magfield_rescale_ = magfieldRescale;
82  }
83 
84  protected:
86  std::string filename_;
88 
89  ClassDefOverride(PHFieldConfigv1, 3)
90 };
91 
92 #endif