Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CMFlashDifferencev1.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file CMFlashDifferencev1.h
1 
7 #ifndef TRACKBASE_CMFLASHDIFFERENCEV1_H
8 #define TRACKBASE_CMFLASHDIFFERENCEV1_H
9 
10 #include "CMFlashDifference.h"
11 
12 #include <iostream>
13 
14 class PHObject;
15 
21 {
22  public:
24  CMFlashDifferencev1() = default;
25 
26  // PHObject virtual overloads
27  void identify(std::ostream& os = std::cout) const override;
28  void Reset() override {}
29  int isValid() const override;
30  PHObject* CloneMe() const override { return new CMFlashDifferencev1(*this); }
31 
33  void CopyFrom( const CMFlashDifference& ) override;
34 
36  void CopyFrom( CMFlashDifference* source ) override
37  { CopyFrom( *source ); }
38 
39  void setNclusters(unsigned int n) override { m_nclusters = n; }
40  unsigned int getNclusters() const override { return m_nclusters; }
41  //
42  // difference position
43  //
44  float getTruthPhi() const override { return m_Phi[0]; }
45  void setTruthPhi(float phi) override { m_Phi[0] = phi; }
46 
47  float getRecoPhi() const override { return m_Phi[1]; }
48  void setRecoPhi(float phi) override { m_Phi[1] = phi; }
49 
50  float getTruthR() const override { return m_R[0]; }
51  void setTruthR(float r) override { m_R[0] = r; }
52 
53  float getRecoR() const override { return m_R[1]; }
54  void setRecoR(float r) override { m_R[1] = r; }
55 
56  float getTruthZ() const override { return m_Z[0]; }
57  void setTruthZ(float z) override { m_Z[0] = z; }
58 
59  float getRecoZ() const override { return m_Z[1]; }
60  void setRecoZ(float z) override { m_Z[1] = z; }
61 
62 
63  /*
64  float getTruthX() const override { return m_pos_truth[0]; }
65  void setTruthX(float x) override { m_pos_truth[0] = x; }
66  float getTruthY() const override { return m_pos_truth[1]; }
67  void setTruthY(float y) override { m_pos_truth[1] = y; }
68  float getRecoX() const override { return m_pos_reco[0]; }
69  void setRecoX(float x) override { m_pos_reco[0] = x; }
70  float getRecoY() const override { return m_pos_reco[1]; }
71  void setRecoY(float y) override { m_pos_reco[1] = y; }
72  */
73 
74  protected:
75  unsigned int m_nclusters = UINT_MAX;
76 
77  float m_Phi[2] = {NAN, NAN}; // (truth, reco)
78  float m_R[2] = {NAN, NAN};
79  float m_Z[2] = {NAN, NAN};
80 
81  ClassDefOverride(CMFlashDifferencev1, 1)
82 };
83 
84 #endif //TRACKBASE_CMFLASHDIFFERENCEV1_H