#ifndef _L1StsHit_h_ #define _L1StsHit_h_ #include "L1Strip.h" //struct L1Branch; typedef unsigned /*short*/ int THitI; // strip index type typedef unsigned short int TZPosI; // strip z-coor index type class L1StsHit { public: TStripI f, b; // front and back strip indices TZPosI iz; // index of z coor. in L1Algo::vStsZPos // std::vector CandidatesB; // std::vector CandidatesF; // short int CandF; // short int CandB; short int used; // unsigned short int n; // number of event L1StsHit():f(0),b(0),iz(0), used(0){ // CandidatesB.resize(0, 0); // CandidatesF.resize(0, 0); } L1StsHit(L1StsHit &h, /*short*/ int sh, /*short*/ int shB):f(h.f + sh),b(h.b + shB),iz(0) {} }; #endif #ifndef _L1StsHitV_h_ #define _L1StsHitV_h_ #include "L1Strip.h" class L1StsHitV { public: nsL1::vector ::TSimd v, u; // front and back strip indices nsL1::vector ::TSimd f, b; // front and back strip indices nsL1::vector ::TSimd z; // index of z coor. in L1Algo::vStsZPos // std::vector CandidatesB; // std::vector CandidatesF; // short int CandF; // short int CandB; nsL1::vector ::TSimd used; // unsigned short int n; // number of event L1StsHitV():v(0),u(0),f(0),b(0),z(0), used(0){ // CandidatesB.resize(0, 0); // CandidatesF.resize(0, 0); } L1StsHitV(L1StsHit &h, /*short*/ int sh, /*short*/ int shB):f(h.f + sh),b(h.b + shB),z(0) {} int size() const { return f.size(); } void resize(const int n) { v.resize(n, 0); u.resize(n, 0); f.resize(n, 0); b.resize(n, 0); z.resize(n, 0); used.resize(n, 0); } void setHit(const L1StsHit& hit, const int n) { f[n]=hit.f; b[n]=hit.b; // z[n]=hit.iz; // used[n]=hit.used; } }; #endif