Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
InttVertexv1.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file InttVertexv1.h
1 #ifndef INTT_INTTVERTEXV1_H
2 #define INTT_INTTVERTEXV1_H
3 
4 #include "InttVertex.h"
5 
6 #include <iostream>
7 
8 class PHObject;
9 
10 class InttVertexv1 : public InttVertex
11 {
12  public:
13  InttVertexv1() = default;
14  ~InttVertexv1() override = default;
15 
16  // PHObject virtual overloads
17 
18  void identify(std::ostream& os = std::cout) const override;
19  void Reset() override { *this = InttVertexv1(); }
20  int isValid() const override;
21  PHObject* CloneMe() const override { return new InttVertexv1(*this); }
22 
23  // vertex info
24 
25  unsigned int get_id() const override { return _id; }
26  void set_id(unsigned int id) override { _id = id; }
27 
28  float get_z() const override { return _z; }
29  void set_z(float z) override { _z = z; }
30 
31  float get_z_err() const override { return _z_err; }
32  void set_z_err(float z_err) override { _z_err = z_err; }
33 
34  private:
35  unsigned int _id = std::numeric_limits<unsigned int>::max(); //< unique identifier within container
36  float _z = std::numeric_limits<float>::signaling_NaN(); //< collision position z
37  float _z_err = std::numeric_limits<float>::signaling_NaN(); //< collision position z uncertainty
38 
40 };
41 
42 #endif