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{
26
27 public:
28 TrackerTraitsGPU() = default;
29 ~TrackerTraitsGPU() final = default;
30
31 void adoptTimeFrame(TimeFrame<nLayers>* tf) final;
32 void initialiseTimeFrame(const int iteration) final;
33
34 void computeLayerTracklets(const int iteration, int, int) final;
35 void computeLayerCells(const int iteration) final;
36 void findCellsNeighbours(const int iteration) final;
37 void findRoads(const int iteration) final;
38
39 bool supportsExtendTracks() const noexcept final { return false; }
40 bool supportsFindShortPrimaries() const noexcept final { return false; }
41
42 void setBz(float) final;
43
44 const char* getName() const noexcept final { return "GPU"; }
45 bool isGPU() const noexcept final { return true; }
46
47 // TimeFrameGPU information forwarding
48 int getTFNumberOfClusters() const override;
49 int getTFNumberOfTracklets() const override;
50 int getTFNumberOfCells() const override;
51
52 private:
53 IndexTableUtilsN* mDeviceIndexTableUtils;
54 gpu::TimeFrameGPU<nLayers>* mTimeFrameGPU;
55};
56
57} // namespace o2::its
58
59#endif
int getTFNumberOfClusters() const override
void initialiseTimeFrame(const int iteration) final
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
~TrackerTraitsGPU() final=default
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
IndexTableUtils< nLayers > IndexTableUtilsN
std::unique_ptr< GPUReconstructionTimeframe > tf