File indexing completed on 2026-04-02 08:12:46
0001
0002
0003 #ifndef GLOBALVERTEX_MBDVERTEXV3_H
0004 #define GLOBALVERTEX_MBDVERTEXV3_H
0005
0006 #include "MbdVertex.h"
0007
0008 #include <iostream>
0009 #include <limits>
0010
0011 class MbdVertexv3 : public MbdVertex
0012 {
0013 public:
0014 MbdVertexv3() = default;
0015 ~MbdVertexv3() override = default;
0016
0017
0018 void identify(std::ostream& os = std::cout) const override;
0019 void Reset() override { *this = MbdVertexv3(); }
0020 int isValid() const override;
0021 PHObject* CloneMe() const override { return new MbdVertexv3(*this); }
0022
0023
0024 unsigned int get_id() const override { return _id; }
0025 void set_id(unsigned int id) override { _id = id; }
0026
0027 float get_t() const override { return _t; }
0028 void set_t(float t) override { _t = t; }
0029
0030 float get_t_err() const override { return _t_err; }
0031 void set_t_err(float t_err) override { _t_err = t_err; }
0032
0033
0034 float get_x() const override { return 0; }
0035 float get_y() const override { return 0; }
0036
0037 float get_z() const override { return _z; }
0038 void set_z(float z) override { _z = z; }
0039
0040 float get_z_err() const override { return _z_err; }
0041 void set_z_err(float z_err) override { _z_err = z_err; }
0042
0043 float get_position(unsigned int coor) const override;
0044
0045
0046 short int get_beam_crossing() const override { return _bco; }
0047 void set_beam_crossing(short int bco) override { _bco = bco; }
0048
0049 private:
0050 unsigned int _id{std::numeric_limits<unsigned int>::max()};
0051 short int _bco{std::numeric_limits<short int>::max()};
0052 float _t{std::numeric_limits<float>::quiet_NaN()};
0053 float _t_err{std::numeric_limits<float>::quiet_NaN()};
0054 float _z{std::numeric_limits<float>::quiet_NaN()};
0055 float _z_err{std::numeric_limits<float>::quiet_NaN()};
0056
0057 ClassDefOverride(MbdVertexv3, 1);
0058 };
0059
0060 #endif