Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SvtxTrackInfo.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file SvtxTrackInfo.h
1 #ifndef TRACKBASEHISTORIC_SVTXTRACKINFO_H
2 #define TRACKBASEHISTORIC_SVTXTRACKINFO_H
3 
4 #include <g4main/PHG4HitDefs.h>
5 #include <phool/PHObject.h>
6 #include <trackbase/TrkrDefs.h>
7 
8 #include <limits.h>
9 #include <cmath>
10 #include <cstdint>
11 #include <iostream>
12 #include <map>
13 #include <set>
14 
15 class SvtxTrackInfo : public PHObject
16 {
17  public:
18  ~SvtxTrackInfo() override = default;
19 
20  // The "standard PHObject response" functions...
21  void identify(std::ostream& os = std::cout) const override
22  {
23  os << "SvtxTrackInfo base class" << std::endl;
24  }
25 
26  int isValid() const override { return 0; }
27  PHObject* CloneMe() const override { return nullptr; }
28 
30  using PHObject::CopyFrom;
31 
33  virtual void CopyFrom(const SvtxTrackInfo&)
34  {
35  }
36 
38  virtual void CopyFrom(SvtxTrackInfo*)
39  {
40  }
41 
42  //
43  // basic track information ---------------------------------------------------
44  //
45 
46  virtual float get_chisq() const { return NAN; }
47  virtual void set_chisq(float) {}
48 
49  virtual uint8_t get_ndf() const { return std::numeric_limits<uint8_t>::quiet_NaN(); }
50  virtual void set_ndf(uint8_t) {}
51 
52  // bitmap for clusters
53  virtual uint64_t get_hitbitmap() const { return std::numeric_limits<uint64_t>::quiet_NaN(); }
54  virtual void set_hitbitmap(uint64_t) {}
55 
56  // vertex information
57  virtual float get_x() const { return NAN; }
58  virtual void set_x(float) {}
59 
60  virtual float get_y() const { return NAN; }
61  virtual void set_y(float) {}
62 
63  virtual float get_z() const { return NAN; }
64  virtual void set_z(float) {}
65 
66  virtual float get_pos(unsigned int) const { return NAN; }
67 
68  virtual float get_px() const { return NAN; }
69  virtual void set_px(float) {}
70 
71  virtual float get_py() const { return NAN; }
72  virtual void set_py(float) {}
73 
74  virtual float get_pz() const { return NAN; }
75  virtual void set_pz(float) {}
76 
77  virtual float get_mom(unsigned int) const { return NAN; }
78 
79  virtual float get_p() const { return NAN; }
80  virtual float get_pt() const { return NAN; }
81  virtual float get_eta() const { return NAN; }
82  virtual float get_phi() const { return NAN; }
83 
84  virtual float get_covariance(int /*i*/, int /*j*/) const { return NAN; }
85  virtual void set_covariance(int /*i*/, int /*j*/, float /*value*/) {}
86 
87  virtual short int get_crossing() const { return SHRT_MAX; }
88  virtual void set_crossing(short int /*crossing*/) {}
89 
90  private:
92 };
93 
94 #endif