31 const GPUTPCGMMerger* merger = GPUTPCGlobalMergerComponent::GetCurrentMerger();
32 if (merger ==
nullptr) {
37 for (int32_t
i = 0;
i < merger->NOutputTracks();
i++) {
44 tr.Set(track.GetParam().GetX(), track.GetAlpha(), track.GetParam().GetPar(), track.GetParam().GetCov());
45 AliTPCseed* seed =
new (tpctracker->NextFreeSeed()) AliTPCseed(tr);
47 seed->SetClusterPointer(
j,
nullptr);
48 seed->SetClusterIndex(
j, -1);
53 for (int32_t
j = track.NClusters() - 1;
j >= 0;
j--) {
58 if (lastrow != -1 && (cls.
row < lastrow || cls.
leg != lastleg)) {
61 if (cls.
row == lastrow) {
65 AliTPCtrackerRow&
row = tpctracker->GetRow(cls.
sector % 18, cls.
row);
66 uint32_t clIndexOffline = 0;
67 AliTPCclusterMI* clOffline =
row.FindNearest2(cls.y, cls.z, 0.01f, 0.01f, clIndexOffline);
71 clIndexOffline =
row.GetIndex(clIndexOffline);
74 seed->SetClusterPointer(cls.
row, clOffline);
75 seed->SetClusterIndex2(cls.
row, clIndexOffline);
82 seed->SetRelativeSector(track.GetAlpha() / (M_PI / 9.f));
83 seed->SetNumberOfClusters(ncls);
84 seed->SetNFoundable(ncls);
85 seed->SetChi2(track.GetParam().GetChi2());
87 float alpha = seed->GetAlpha();
88 if (
alpha >= 2.f * M_PI) {
94 seed->SetRelativeSector(track.GetAlpha() / (M_PI / 9.f));
96 seed->SetPoolID(tpctracker->GetLastSeedId());
97 seed->SetIsSeeding(kTRUE);
100 seed->SetSeedType(0);
101 seed->SetFirstPoint(-1);
102 seed->SetLastPoint(-1);
103 seeds->AddLast(seed);
132 const GPUTPCGMMerger* merger = GPUTPCGlobalMergerComponent::GetCurrentMerger();
133 if (merger ==
nullptr) {
137 for (int32_t
i = 0;
i < merger->NOutputTracks();
i++) {
142 if (
index > seeds->GetEntriesFast()) {
143 GPUError(
"Invalid number of offline seeds");
146 AliTPCseed* seed = (AliTPCseed*)seeds->UncheckedAt(
index++);
147 seed->Set(track.GetParam().GetX(), track.GetAlpha(), track.GetParam().GetPar(), track.GetParam().GetCov());