Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-09-16 08:53:36

0001 // AUTOMATICALLY GENERATED FILE - DO NOT EDIT
0002 
0003 #ifndef EDM4HEP_Vector2f_H
0004 #define EDM4HEP_Vector2f_H
0005 
0006 #include <cstddef>
0007 #include <ostream>
0008 
0009 #if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
0010 #include "nlohmann/json_fwd.hpp"
0011 #endif
0012 
0013 namespace edm4hep {
0014 
0015 /** @class Vector2f
0016  *  
0017  *  @author: 
0018  */
0019 class Vector2f {
0020 public:
0021   float a{};
0022   float b{};
0023 
0024  constexpr Vector2f() : a(0),b(0) {}
0025  constexpr Vector2f(float aa,float bb) : a(aa),b(bb) {}
0026  constexpr Vector2f(const float* v) : a(v[0]), b(v[1]) {}
0027  constexpr bool operator==(const Vector2f& v) const { return (a==v.a&&b==v.b) ; }
0028  constexpr bool operator!=(const Vector2f& v) const { return !(*this == v) ; }
0029  constexpr float operator[](unsigned i) const {
0030  static_assert(
0031  offsetof(Vector2f,a)+sizeof(Vector2f::a) == offsetof(Vector2f,b),
0032  "operator[] requires no padding");
0033  return *( &a + i ) ; }
0034  
0035 
0036 };
0037 
0038 std::ostream& operator<<(std::ostream& o, const edm4hep::Vector2f& value);
0039 
0040 #if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
0041 void to_json(nlohmann::json& j, const Vector2f& value);
0042 #endif
0043 
0044 } // namespace edm4hep
0045 
0046 
0047 #endif