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

Lightweight render-related enums shared across the disp3D_rhi library. More...

#include "../disp3D_rhi_global.h"
#include <cstdint>
Include dependency graph for rendertypes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum  ShaderMode {
  Standard , Holographic , Anatomical , Dipole ,
  XRay , ShowNormals
}
enum  VisualizationMode { ModeSurface , ModeAnnotation , ModeScientific , ModeSourceEstimate }

Functions

uint32_t packABGR (uint32_t r, uint32_t g, uint32_t b, uint32_t a=0xFF)

Detailed Description

Lightweight render-related enums shared across the disp3D_rhi library.

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.

      This header deliberately avoids pulling in any Qt-private or QRhi
      headers so that it can be included from public API headers without
      leaking implementation details to downstream consumers.

Definition in file rendertypes.h.

Enumeration Type Documentation

◆ ShaderMode

enum ShaderMode

Shader pipeline modes supported by the renderer.

Each mode corresponds to a different GPU shader program and visual style. Values are kept compatible with the original BrainRenderer::ShaderMode enum.

Enumerator
Standard 

Default Phong-style shading.

Holographic 

Two-sided holographic effect.

Anatomical 

Anatomical / curvature-based coloring.

Dipole 

Specialized dipole rendering.

XRay 

Semi-transparent X-ray effect.

ShowNormals 

Visualise surface normals as colour.

Definition at line 72 of file rendertypes.h.

◆ VisualizationMode

Overlay visualisation modes for brain surfaces.

Controls which vertex-colour channel drives the final appearance. Values are kept compatible with the original BrainSurface::VisualizationMode enum.

Enumerator
ModeSurface 

Plain surface colours (curvature-derived).

ModeAnnotation 

Atlas / parcellation annotation colours.

ModeScientific 

Scientific colourmap (curvature).

ModeSourceEstimate 

Source-estimate overlay colours.

Definition at line 89 of file rendertypes.h.

Function Documentation

◆ packABGR()

uint32_t packABGR ( uint32_t r,
uint32_t g,
uint32_t b,
uint32_t a = 0xFF )
inline

Pack RGBA colour components into a single ABGR uint32_t suitable for GPU vertex attributes declared as UNormByte4.

Parameters
[in]rRed channel (0–255).
[in]gGreen channel (0–255).
[in]bBlue channel (0–255).
[in]aAlpha channel (0–255, default 255).
Returns
Packed ABGR colour.

Definition at line 60 of file rendertypes.h.