Skip to content

File Parameters.h

FileList > compo > Parameters.h

Go to the source code of this file

Generic parameter system for exposing tweakable properties to UI .More...

  • #include "glm/glm.hpp"
  • #include <string>
  • #include <unordered_map>
  • #include <variant>

Classes

Type Name
class Parameters
Generic parameter container with type-safe runtime access.
struct ParaData
Internal storage for parameter value and range.

Public Types

Type Name
enum ParaType
Enumeration of supported parameter types.

Detailed Description

Parameters provides a type-safe, runtime-configurable parameter system for exposing shader uniforms, effect properties, and other tweakable values to the editor UI. It supports common types (float, int, vec3, etc.) and stores them in a type-erased std::variant for flexible access.

Architecture: * Used by PostProcessing effects, shaders, and other configurable systems * UI layer reads Parameters to generate sliders, color pickers, etc. * Parameter changes propagate via dirty flags (is_para_changed) * Values are validated against data_range constraints

Note:

Parameters are UI-facing and not directly GPU-uploadable (convert to uniforms).

Note:

Type safety enforced at compile-time via template Get<T>() accessor.

Public Types Documentation

enum ParaType

Enumeration of supported parameter types.

enum ParaType {
    NONE_PARA = -1,
    FLOAT_PARA,
    INT_PARA,
    BOOL_PARA,
    STRING_PARA,
    VEC2_PARA,
    VEC3_PARA,
    VEC4_PARA,
    MAT3_PARA,
    MAT4_PARA,
    TEXTURE_PARA,
    CUSTOM_PARA
};



The documentation for this class was generated from the following file src/compo/Parameters.h