File indexing completed on 2024-04-06 12:04:16
0001 #ifndef GeometryVector_EtaInterval_H
0002 #define GeometryVector_EtaInterval_H
0003 #include "DataFormats/GeometryVector/interface/Basic3DVector.h"
0004
0005 class EtaInterval {
0006 public:
0007 EtaInterval(float eta1, float eta2) : z1(::sinhf(eta1)), z2(::sinhf(eta2)) {}
0008
0009 template <typename T>
0010 bool inside(Basic3DVector<T> const& v) const {
0011 auto z = v.z();
0012 auto r = v.perp();
0013 return (z > z1 * r) & (z < z2 * r);
0014 }
0015
0016 private:
0017 float z1, z2;
0018 };
0019
0020 #endif