File indexing completed on 2025-12-15 10:12:02
0001
0002
0003 #ifndef EDM4EIC_CovDiag3f_H
0004 #define EDM4EIC_CovDiag3f_H
0005
0006 #include <ostream>
0007
0008 #if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
0009 #include "nlohmann/json_fwd.hpp"
0010 #endif
0011
0012 namespace edm4eic {
0013
0014
0015
0016
0017
0018
0019 class CovDiag3f {
0020 public:
0021 float xx{};
0022 float yy{};
0023 float zz{};
0024
0025 CovDiag3f() : xx{0}, yy{0}, zz{0} {}
0026 CovDiag3f(double x, double y, double z)
0027 : xx{static_cast<float>(x)}, yy{static_cast<float>(y)}, zz{static_cast<float>(z)} {}
0028 float operator()(unsigned i, unsigned j) const {return (i == j) ? *(&xx + i) : 0.;}
0029
0030
0031 };
0032
0033 std::ostream& operator<<(std::ostream& o, const CovDiag3f& value);
0034
0035 #if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
0036 void to_json(nlohmann::json& j, const CovDiag3f& value);
0037 #endif
0038
0039 namespace v850 {
0040 using CovDiag3f = edm4eic::CovDiag3f;
0041 }
0042
0043
0044 }
0045
0046
0047 #endif