Struct MolaVizImGui::PerWindowData

Nested Relationships

This struct is a nested type of Class MolaVizImGui.

Nested Types

Struct Documentation

struct PerWindowData

Public Members

GLFWwindow *glfw_window = nullptr
std::shared_ptr<mrpt::opengl::COpenGLScene> background_scene

mrpt scene rendered in the background OpenGL viewport.

std::mutex background_scene_mtx
std::unique_ptr<mrpt::imgui::CImGuiSceneView> background_scene_view

Camera / FBO renderer for the background scene. Held by unique_ptr so we can release its GL resources (FBO/texture) explicitly while the GL context is still current, before glfwDestroyWindow(). CImGuiSceneView is non-copyable and non-movable.

float cam_azimuth_deg = 110.0f

Legacy camera state (used to initialize background_scene_view).

float cam_elevation_deg = 15.0f
float cam_zoom = 20.0f
float cam_look_at[3] = {0.0f, 0.0f, 0.0f}
bool cam_orthographic = false
std::map<subwindow_name_t, SubWindowState> sub_windows

Sub-windows registered for this host window.

std::map<subwindow_name_t, PendingSensorObs> sensor_windows
std::deque<std::string> console_messages

Console overlay lines.

std::deque<DecayingCloud> decaying_clouds

Decaying point clouds.

size_t max_decaying_clouds = 100
mola::gui::MenuBar menu_bar

Menu bar (empty = no menu bar rendered).

struct PendingSensorObs

Latest observation stashed per sensor-subwindow title, updated by subwindow_update_visualization() and drawn every frame by render_sensor_windows() (ImGui is immediate-mode — we must re-draw every frame or the window disappears).

Public Members

mrpt::rtti::CObject::Ptr obj
std::shared_ptr<const mrpt::containers::yaml> extra
std::string class_name