|
| 1 | +// Copyright 2019-2026 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 | + |
| 12 | +/// \file GPUDisplayControl.h |
| 13 | +/// \author David Rohr |
| 14 | + |
| 15 | +// No include guard: included multiple times by qconfig with different macro definitions |
| 16 | + |
| 17 | +#include <atomic> |
| 18 | +#include <cstdint> |
| 19 | +#include <string> |
| 20 | +#include "GPUDisplayTypes.h" |
| 21 | + |
| 22 | +// clang-format off |
| 23 | +BeginNamespace(o2::gpu) |
| 24 | +BeginHiddenConfig(GPUDisplayControl, control) |
| 25 | + AddVariable(mDisplayControl, GPUDisplayCopyableAtomic<int32_t>, 0) // Control for next event (=1) or quit (=2) |
| 26 | + AddVariable(mResetScene, GPUDisplayCopyableAtomic<bool>, false) |
| 27 | + AddVariable(mPrintInfoText, int32_t, 1) |
| 28 | + AddVariable(mPrintInfoTextAlways, bool, false) |
| 29 | + AddVariable(mRequestScreenshot, bool, false) |
| 30 | + AddVariable(mAnimateScreenshot, int32_t, 0) |
| 31 | + AddVariable(mAnimationChangeConfig, bool, true) |
| 32 | + AddVariable(mAnimationDelay, float, 2.f) |
| 33 | + AddVariable(mPrintInfoTextGUI, bool, true) // Send the status and info text to the Qt GUI, shown at its bottom |
| 34 | + AddVariable(mGuiPrintInfo, bool, false) // Show the info of options changed with Qt GUI elements (not for key presses in the GUI) |
| 35 | + AddVariable(mRotateModel, bool, false) // Rotate the model instead of the camera, like holding RCTRL (set in the Qt GUI) |
| 36 | + AddVariable(mRotateAroundZ, bool, false) // Rotate the TPC around the beamline, like holding RALT (set in the Qt GUI) |
| 37 | + AddVariable(mFilterMacroCustom, std::string, "") // Code of the custom track filter ROOT macro (trackFilter = filterMacros.size() + 1), set in the Qt GUI |
| 38 | + AddVariable(mScreenShotname, std::string, "screenshot") // Name of screenshot and animation frame files, followed by numbers |
| 39 | + AddVariable(mGLPosFile, std::string, "glpos.tmp") // File for saving / loading the camera position |
| 40 | + AddVariable(mGLAnimationFile, std::string, "glanimation.tmp") // File for saving / loading the animation path |
| 41 | + AddVariable(mGuiDarkMode, int8_t, -1) // Dark mode of the Qt GUI, -1 = not yet set: the GUI reports the system scheme when it starts |
| 42 | + AddVariable(mGuiScale, float, 1.f) // Scale factor of text and elements of the Qt GUI (on top of the system scaling), Ctrl + mouse wheel / Ctrl + 0 in the GUI |
| 43 | + AddVariable(dummy, bool, false) // dummy value to reference for keys that do not change variables |
| 44 | +EndConfig() |
| 45 | +EndNamespace() // o2::gpu |
0 commit comments