EchoMap 2026-07-25 6d3977c
An experimental cross-platform digital signal processing application for sound-source localisation.
Loading...
Searching...
No Matches
echomap::IPanel Class Referenceabstract

Represents a panel or window on the GUI. More...

#include <IPanel.hpp>

Inheritance diagram for echomap::IPanel:
[legend]

Public Member Functions

virtual void draw () noexcept=0
 Draw the panel to the active rendering context.
virtual const char * get_imgui_name () const noexcept=0
 Retrieves the name of the IPanel for Dear ImGui API functions.
virtual void update_gpu (const wgpu::CommandEncoder &command_encoder)
 Delegate work to the GPU via the WebGPU platform.

Static Protected Attributes

static constexpr ImVec2 button_size {80.0f, 20.0f}
static constexpr auto table_flags

Detailed Description

Represents a panel or window on the GUI.

Panels may render from a static context, typically through a configured ImGui context, or despatch work to the GPU through a WebGPU CommandEncoder.

Definition at line 26 of file IPanel.hpp.

Member Function Documentation

◆ draw()

virtual void echomap::IPanel::draw ( )
pure virtualnoexcept

◆ get_imgui_name()

virtual const char * echomap::IPanel::get_imgui_name ( ) const
nodiscardpure virtualnoexcept

Retrieves the name of the IPanel for Dear ImGui API functions.

Returns
The human-readable name of the window as a NULL-terminated C string.

Implemented in echomap::ChannelMappingPanel, echomap::ErrorModal, echomap::FileChooser, echomap::MapSourcesModal, echomap::MenuPanel, echomap::ProjectPanel, echomap::SensorGeometryPanel, echomap::SignalDFTPanel, and echomap::SignalWaveformPanel.

◆ update_gpu()

virtual void echomap::IPanel::update_gpu ( const wgpu::CommandEncoder & command_encoder)
inlinevirtual

Delegate work to the GPU via the WebGPU platform.

Parameters
command_encoderThe configured CommandEncoder for the target accelerator.

Definition at line 48 of file IPanel.hpp.

51 {
52 std::ignore = command_encoder;
53 }

Member Data Documentation

◆ button_size

ImVec2 echomap::IPanel::button_size {80.0f, 20.0f}
staticconstexprprotected

Definition at line 56 of file IPanel.hpp.

56{80.0f, 20.0f};

◆ table_flags

auto echomap::IPanel::table_flags
staticconstexprprotected
Initial value:
=
ImGuiTableFlags_SizingStretchProp | ImGuiTableFlags_Borders | ImGuiTableFlags_RowBg

Definition at line 59 of file IPanel.hpp.


The documentation for this class was generated from the following file: