v2.0.0
Loading...
Searching...
No Matches
viewstate.h File Reference

ViewState declarations — per-view data structures and conversion helpers. More...

#include "../disp3D_global.h"
#include "rendertypes.h"
#include <QString>
#include <QMap>
#include <QQuaternion>
#include <QVector2D>
#include <QVariant>
#include <QColor>
#include <algorithm>
#include <memory>
Include dependency graph for viewstate.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ViewVisibilityProfile
 Per-view toggle flags controlling which data layers (brain, sensors, sources, network) are visible. More...
struct  SubView
 Viewport subdivision holding its own camera, projection, and scissor rectangle. More...

Functions

DISP3DSHARED_EXPORT QQuaternion perspectivePresetRotation ()
DISP3DSHARED_EXPORT QString multiViewPresetName (int preset)
DISP3DSHARED_EXPORT QQuaternion multiViewPresetOffset (int preset)
DISP3DSHARED_EXPORT bool multiViewPresetIsPerspective (int preset)
DISP3DSHARED_EXPORT int normalizedVisualizationTarget (int target, int maxIndex=3)
DISP3DSHARED_EXPORT ShaderMode shaderModeFromName (const QString &name)
DISP3DSHARED_EXPORT QString shaderModeName (ShaderMode mode)
DISP3DSHARED_EXPORT VisualizationMode visualizationModeFromName (const QString &name)
DISP3DSHARED_EXPORT QString visualizationModeName (VisualizationMode mode)
DISP3DSHARED_EXPORT QRgb mneAnalyzeColor (double v)
bool isTrue (const QVariant &value, bool fallback)

Detailed Description

ViewState declarations — per-view data structures and conversion helpers.

Author
Christoph Dinh chris.nosp@m.toph.nosp@m..dinh.nosp@m.@mne.nosp@m.-cpp..nosp@m.org
Since
2.0.0
Date
February, 2026

LICENSE

Copyright (C) 2026, Christoph Dinh. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  • Neither the name of MNE-CPP authors nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Definition in file viewstate.h.

Function Documentation

◆ isTrue()

bool isTrue ( const QVariant & value,
bool fallback )
inline

Read a boolean from QSettings with a default fallback.

Definition at line 294 of file viewstate.h.

◆ mneAnalyzeColor()

DISP3DSHARED_EXPORT QRgb mneAnalyzeColor ( double v)

MNE analyze colormap: teal → blue → gray → red → yellow.

Port of mne_analyze_colormap(format='vtk') from MNE-Python. Input v is normalised to [0,1] where 0.5 corresponds to zero field.

Parameters
[in]vNormalised value in [0,1].
Returns
Packed QRgb colour.

Definition at line 363 of file viewstate.cpp.

◆ multiViewPresetIsPerspective()

DISP3DSHARED_EXPORT bool multiViewPresetIsPerspective ( int preset)

Whether a preset is a perspective (free-rotate) camera rather than an orthographic-style fixed camera.

Definition at line 285 of file viewstate.cpp.

◆ multiViewPresetName()

DISP3DSHARED_EXPORT QString multiViewPresetName ( int preset)

Human-readable name for a multi-view preset index (0–6).

Definition at line 239 of file viewstate.cpp.

◆ multiViewPresetOffset()

DISP3DSHARED_EXPORT QQuaternion multiViewPresetOffset ( int preset)

Camera rotation quaternion for a multi-view preset index (0–6).

Definition at line 255 of file viewstate.cpp.

◆ normalizedVisualizationTarget()

DISP3DSHARED_EXPORT int normalizedVisualizationTarget ( int target,
int maxIndex = 3 )

Clamp a visualization target index to [-1, maxIndex].

Parameters
[in]targetRaw target index (-1 = single view, 0+ = multi pane).
[in]maxIndexUpper bound (inclusive). Defaults to 3 for backwards compatibility, but callers should pass viewportCount-1.

Definition at line 315 of file viewstate.cpp.

◆ perspectivePresetRotation()

DISP3DSHARED_EXPORT QQuaternion perspectivePresetRotation ( )

Default perspective rotation quaternion used for the "Perspective" camera.

Definition at line 232 of file viewstate.cpp.

◆ shaderModeFromName()

DISP3DSHARED_EXPORT ShaderMode shaderModeFromName ( const QString & name)

Convert a shader name ("Standard", "Holographic", "Anatomical") to enum.

Definition at line 322 of file viewstate.cpp.

◆ shaderModeName()

DISP3DSHARED_EXPORT QString shaderModeName ( ShaderMode mode)

Convert a ShaderMode enum to display string.

Definition at line 332 of file viewstate.cpp.

◆ visualizationModeFromName()

DISP3DSHARED_EXPORT VisualizationMode visualizationModeFromName ( const QString & name)

Convert a visualization mode name to enum.

Definition at line 341 of file viewstate.cpp.

◆ visualizationModeName()

DISP3DSHARED_EXPORT QString visualizationModeName ( VisualizationMode mode)

Convert a VisualizationMode enum to display string.

Definition at line 351 of file viewstate.cpp.