Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-10-17 08:19:38

0001 #ifndef GLOBALVERTEX_TRUTHVERTEXV1_H
0002 #define GLOBALVERTEX_TRUTHVERTEXV1_H
0003 
0004 #include "TruthVertex.h"
0005 
0006 #include <iostream>
0007 #include <limits>
0008 
0009 class TruthVertex_v1 : public TruthVertex
0010 {
0011  public:
0012   TruthVertex_v1() = default;
0013   ~TruthVertex_v1() override = default;
0014 
0015   // PHObject virtual overloads
0016   void identify(std::ostream& os = std::cout) const override;
0017   void Reset() override { *this = TruthVertex_v1(); }
0018   int isValid() const override;
0019   PHObject* CloneMe() const override { return new TruthVertex_v1(*this); }
0020 
0021   // vertex info
0022   unsigned int get_id() const override { return _id; }
0023   void set_id(unsigned int id) override { _id = id; }
0024 
0025   float get_t() const override { return _t; }
0026   void set_t(float t) override { _t = t; }
0027 
0028   float get_t_err() const override { return _t_err; }
0029   void set_t_err(float t_err) override { _t_err = t_err; }
0030 
0031   float get_z() const override { return _z; }
0032   void set_z(float z) override { _z = z; }
0033 
0034   float get_z_err() const override { return _z_err; }
0035   void set_z_err(float z_err) override { _z_err = z_err; }
0036 
0037   float get_x() const override { return _x; }
0038   void set_x(float x) override { _x = x; }
0039 
0040   float get_x_err() const override { return _x_err; }
0041   void set_x_err(float x_err) override { _x_err = x_err; }
0042 
0043   float get_y() const override { return _y; }
0044   void set_y(float y) override { _y = y; }
0045 
0046   float get_y_err() const override { return _y_err; }
0047   void set_y_err(float y_err) override { _y_err = y_err; }
0048 
0049  private:
0050   unsigned int _id{std::numeric_limits<unsigned int>::max()};
0051   float _t{std::numeric_limits<float>::quiet_NaN()};
0052   float _t_err{std::numeric_limits<float>::quiet_NaN()};
0053   float _z{std::numeric_limits<float>::quiet_NaN()};
0054   float _z_err{std::numeric_limits<float>::quiet_NaN()};
0055   float _x{std::numeric_limits<float>::quiet_NaN()};
0056   float _x_err{std::numeric_limits<float>::quiet_NaN()};
0057   float _y{std::numeric_limits<float>::quiet_NaN()};
0058   float _y_err{std::numeric_limits<float>::quiet_NaN()};
0059 
0060   ClassDefOverride(TruthVertex_v1, 1);
0061 };
0062 
0063 #endif