ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RunHeader.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file RunHeader.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef FFAOBJECTS_RUNHEADER_H
4 #define FFAOBJECTS_RUNHEADER_H
5 
6 #include <phool/PHObject.h>
7 
8 #include <cmath>
9 #include <iostream>
10 #include <string> // for string
11 
13 class RunHeader : public PHObject
14 {
15  public:
17  ~RunHeader() override {}
18 
19  PHObject *CloneMe() const override;
20 
22  void Reset() override;
23 
27  void identify(std::ostream &os = std::cout) const override;
28 
30  int isValid() const override;
31 
33  virtual int get_RunNumber() const;
35  virtual void set_RunNumber(const int run);
36 
37  virtual void set_floatval(const std::string &/*name*/, const float /*fval*/) { return; }
38  virtual float get_floatval(const std::string &/*name*/) const { return NAN; }
39 
40  virtual void set_intval(const std::string &/*name*/, const int /*ival*/) { return; }
41  virtual int get_intval(const std::string &/*name*/) const { return -999999; }
42 
44  void NoWarning(const int i = 1);
45 
46  private:
47  void warning(const std::string &func) const;
48 
49  ClassDefOverride(RunHeader, 1)
50 };
51 
52 #endif