35 float X0()
const {
return fX0; }
36 float X1()
const {
return fX1; }
37 float X2()
const {
return fX2; }
43 float R()
const {
return fR; }
44 float DR()
const {
return fDR; }
45 float U()
const {
return fU; }
63 return a.
X2() / abs(a.
X0()) < b.
X2() / abs(b.
X0());
87 const float_v xCorr =
fR -
fR *
rsqrt(1 - sinPhi * sinPhi);
111 assert((
unsigned char)i < fElement.size());
116 assert((
unsigned char)i < fElement.size());
121 assert((
unsigned char)i < fElement.size());
126 assert((
unsigned char)i < fElement.size());
131 assert((
unsigned char)i < fElement.size());
138 fElement.resize(nSta);
139 for (
int i = 0;
i < nSta; ++
i) {
140 fElement[
i].IStation() =
i;
141 fElement[
i].reserve(nHitsPerStation);
153 fElement[iSta].push_back(hit);
158 for (
unsigned int i = 0;
i < fElement.size(); ++
i) {
160 std::sort(hits.begin(), hits.end());
166 for (
unsigned int i = 0;
i < fElement.size(); ++
i) {
171 for (
unsigned int iH = 0; iH < hits.size(); ++iH) {
174 tmp.push_back(hits[iH]);
const char & IStation() const
PndCAElementsOnStation< T > & OnStation(char i)
const char & IStation() const
friend F32vec4 rsqrt(const F32vec4 &a)
const T & operator[](PndCATES i) const
float_v X1Corrected(float_v sinPhi) const
PndCAElementsOnStation< T > & operator[](char i)
const PndCAElementsOnStation< T > & OnStation(char i) const
PndCAHits(int nSta, int nHitsPerStation=1)
friend bool operator<(const PndCAHit &a, const PndCAHit &b)
const PndCAElementsOnStation< T > & OnStationConst(char i) const
PndCAHit(PndCAGBHit &h, int id)
const PndCAElementsOnStation< T > & operator[](char i) const
void GetLocalX0X1X2(float &x0, float &x1, float &x2) const
T & operator[](PndCATES i)
vector< PndCAElementsOnStation< T > > fElement