Project
Loading...
Searching...
No Matches
GPUO2InterfaceDisplay.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.
11
14
15#ifndef GPUO2INTERFACEDisplay_H
16#define GPUO2INTERFACEDisplay_H
17
18// Some defines denoting that we are compiling for O2
19#ifndef GPUCA_TPC_GEOMETRY_O2
20#define GPUCA_TPC_GEOMETRY_O2
21#endif
22#ifndef GPUCA_O2_INTERFACE
23#define GPUCA_O2_INTERFACE
24#endif
25
26#include <memory>
27#include <vector>
28#include "GPUDataTypes.h"
29
30namespace o2::gpu
31{
32class GPUDisplayInterface;
33class GPUQA;
34struct GPUParam;
35struct GPUTrackingInOutPointers;
36struct GPUO2InterfaceConfiguration;
37struct GPUSettingsGRP;
38class GPUDisplayFrontendInterface;
40{
41 public:
44
45 void UpdateCalib(const GPUCalibObjectsConst* calib);
46 void UpdateGRP(const GPUSettingsGRP* grp);
47 int32_t startDisplay();
48 int32_t show(const GPUTrackingInOutPointers* ptrs);
49 int32_t endDisplay();
50
51 private:
52 std::unique_ptr<GPUDisplayInterface> mDisplay;
53 std::unique_ptr<GPUQA> mQA;
54 std::unique_ptr<GPUParam> mParam;
55 std::unique_ptr<GPUDisplayFrontendInterface> mFrontend;
56 std::unique_ptr<GPUO2InterfaceConfiguration> mConfig;
57};
58} // namespace o2::gpu
59
60#endif
int32_t show(const GPUTrackingInOutPointers *ptrs)
void UpdateCalib(const GPUCalibObjectsConst *calib)
void UpdateGRP(const GPUSettingsGRP *grp)