File indexing completed on 2025-01-18 09:55:33
0001
0002
0003 #ifndef EDM4EIC_TrackPoint_H
0004 #define EDM4EIC_TrackPoint_H
0005
0006 #include "edm4eic/Cov2f.h"
0007 #include "edm4eic/Cov3f.h"
0008 #include "edm4hep/Vector3f.h"
0009 #include <cstdint>
0010 #include <ostream>
0011
0012 #if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
0013 #include "nlohmann/json_fwd.hpp"
0014 #endif
0015
0016 namespace edm4eic {
0017
0018
0019
0020
0021
0022 class TrackPoint {
0023 public:
0024 std::uint64_t surface{};
0025 std::uint32_t system{};
0026 ::edm4hep::Vector3f position{};
0027 ::edm4eic::Cov3f positionError{};
0028 ::edm4hep::Vector3f momentum{};
0029 ::edm4eic::Cov3f momentumError{};
0030 float time{};
0031 float timeError{};
0032 float theta{};
0033 float phi{};
0034 ::edm4eic::Cov2f directionError{};
0035 float pathlength{};
0036 float pathlengthError{};
0037
0038
0039 };
0040
0041 std::ostream& operator<<(std::ostream& o, const edm4eic::TrackPoint& value);
0042
0043 #if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
0044 void to_json(nlohmann::json& j, const TrackPoint& value);
0045 #endif
0046
0047 }
0048
0049
0050 #endif