Project
Loading...
Searching...
No Matches
TrackerTraitsGPU.h
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
12
13#ifndef ITSTRACKINGGPU_TRACKERTRAITSGPU_H_
14#define ITSTRACKINGGPU_TRACKERTRAITSGPU_H_
15
18
19namespace o2::its
20{
21
22template <int nLayers = 7>
23class TrackerTraitsGPU final : public TrackerTraits<nLayers>
24{
25 public:
26 TrackerTraitsGPU() = default;
27 ~TrackerTraitsGPU() override = default;
28
30 void initialiseTimeFrame(const int iteration) final;
31
32 void computeLayerTracklets(const int iteration, int, int) final;
33 void computeLayerCells(const int iteration) final;
34 void findCellsNeighbours(const int iteration) final;
35 void findRoads(const int iteration) final;
36
37 bool supportsExtendTracks() const noexcept final { return false; }
38 bool supportsFindShortPrimaries() const noexcept final { return false; }
39
40 void setBz(float) final;
41
42 const char* getName() const noexcept final { return "GPU"; }
43 bool isGPU() const noexcept final { return true; }
44
45 // TimeFrameGPU information forwarding
46 int getTFNumberOfClusters() const override;
47 int getTFNumberOfTracklets() const override;
48 int getTFNumberOfCells() const override;
49
50 private:
51 IndexTableUtils* mDeviceIndexTableUtils;
52 gpu::TimeFrameGPU<7>* mTimeFrameGPU;
53};
54
55} // namespace o2::its
56
57#endif
int getTFNumberOfClusters() const override
void initialiseTimeFrame(const int iteration) final
~TrackerTraitsGPU() override=default
bool supportsFindShortPrimaries() const noexcept final
const char * getName() const noexcept final
bool supportsExtendTracks() const noexcept final
void findCellsNeighbours(const int iteration) final
void adoptTimeFrame(TimeFrame< nLayers > *tf) final
void computeLayerCells(const int iteration) final
void computeLayerTracklets(const int iteration, int, int) final
int getTFNumberOfTracklets() const override
bool isGPU() const noexcept final
int getTFNumberOfCells() const override
void findRoads(const int iteration) final
std::unique_ptr< GPUReconstructionTimeframe > tf