9#include "tbb/task_scheduler_init.h"
10#include "tbb/blocked_range.h"
11#include "tbb/parallel_for.h"
18 int *StsHitsStartIndex;
int *StsHitsStopIndex;
19 vector<unsigned char> &vSFlag; vector<unsigned char> &vSFlagB;
20 std::vector<L1HitPoint> &vStsHits;
22 double Pick_m;
double MaxInvMom;
25 int *n_g1;
unsigned *portionStopIndex;
43 void operator()(
const blocked_range<size_t>& r )
const;
49 int *StsHitsStartIndex_,
int *StsHitsStopIndex_,
50 vector<unsigned char> &vSFlag_, vector<unsigned char> &vSFlagB_,
51 std::vector<L1HitPoint> &vStsHits_,
53 double Pick_m_,
double MaxInvMom_,
56 int *n_g1_,
unsigned *portionStopIndex_,
74 vStations(vStations_),
NStations(NStations_),
75 StsHitsStartIndex(StsHitsStartIndex_), StsHitsStopIndex(StsHitsStopIndex_),
76 vSFlag(vSFlag_), vSFlagB(vSFlagB_),
79 Pick_m(Pick_m_), MaxInvMom(MaxInvMom_),
80 targX(targX_), targY(targY_), targZ(targZ_), targB(targB_), TargetXYInfo(TargetXYInfo_),
82 n_g1(n_g1_), portionStopIndex(portionStopIndex_),
88 Duplets_start(Duplets_start_), Duplets_hits(Duplets_hits_),
103void ParalleledDup::operator()(
const blocked_range<size_t>& r )
const {
105 for(
int istal = r.begin(); istal < (
int)r.end(); ++istal ){
111 targX, targY, targZ, targB, TargetXYInfo,
113 n_g1, portionStopIndex,
119 Duplets_start, Duplets_hits,
135class ParalleledTrip {
139 int *StsHitsStartIndex;
int *StsHitsStopIndex;
140 std::vector<L1HitPoint> &svStsHits;
141 double Pick_r;
double TRACK_CHI2_CUT;
double MaxInvMom;
148 int *n_g2;
unsigned *portionStopIndex;
158 std::vector<L1Triplet> *vTriplets_part;
159 unsigned *TripStartIndexH;
unsigned *TripStopIndexH;
162 void operator()(
const blocked_range<size_t>& r )
const;
168 int *StsHitsStartIndex_,
int *StsHitsStopIndex_,
169 std::vector<L1HitPoint> &vStsHits_,
170 double Pick_r_,
double TRACK_CHI2_CUT_,
double MaxInvMom_,
177 int *n_g2_,
unsigned *portionStopIndex_,
187 std::vector<L1Triplet> *vTriplets_part_,
188 unsigned *TripStartIndexH_,
unsigned *TripStopIndexH_
192 vStations(vStations_),
NStations(NStations_),
193 StsHitsStartIndex(StsHitsStartIndex_), StsHitsStopIndex(StsHitsStopIndex_),
194 svStsHits(vStsHits_),
195 Pick_r(Pick_r_), TRACK_CHI2_CUT(TRACK_CHI2_CUT_), MaxInvMom(MaxInvMom_),
202 n_g2(n_g2_), portionStopIndex(portionStopIndex_),
211 Duplets_start(Duplets_start_), Duplets_hits(Duplets_hits_),
212 vTriplets_part(vTriplets_part_),
213 TripStartIndexH(TripStartIndexH_), TripStopIndexH(TripStopIndexH_)
219void ParalleledTrip::operator()(
const blocked_range<size_t>& r )
const {
221 for(
int istal = r.begin(); istal < (
int)r.end(); ++istal ){
232 n_g2, portionStopIndex,
241 Duplets_start, Duplets_hits,
243 TripStartIndexH, TripStopIndexH