ogl_beamforming

Ultrasound Beamforming Implemented with OpenGL
git clone anongit@rnpnr.xyz:ogl_beamforming.git
Log | Files | Refs | Feed | Submodules | LICENSE

Commit: 35595c17b35aa38564f8f47a963749beffc4f463
Parent: d1d435bceb286b0535084a4b5b4384601fc5438f
Author: Randy Palamar
Date:   Mon, 10 Mar 2025 21:34:37 -0600

debug readibility and X macro notes

Diffstat:
Mbeamformer.h | 8+++++++-
Mbeamformer_parameters.h | 2++
Mui.c | 4++--
3 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/beamformer.h b/beamformer.h @@ -224,6 +224,12 @@ typedef struct { b32 gen_mipmaps; } FragmentShaderCtx; +typedef enum { +#define X(type, id, pretty) DAS_ ##type = id, +DAS_TYPES +#undef X +} DASShaderID; + typedef struct { uv3 dim; u32 texture; @@ -236,7 +242,7 @@ typedef struct { u32 mips; b32 in_flight; b32 ready_to_present; - u32 das_shader_id; + DASShaderID das_shader_id; u32 timer_ids[CS_LAST]; f32 compute_times[CS_LAST]; diff --git a/beamformer_parameters.h b/beamformer_parameters.h @@ -18,10 +18,12 @@ typedef enum { CS_LAST } ComputeShaderID; +/* X(type, id, pretty name) */ #define DECODE_TYPES \ X(NONE, 0, "None") \ X(HADAMARD, 1, "Hadamard") +/* X(type, id, pretty name) */ #define DAS_TYPES \ X(FORCES, 0, "FORCES") \ X(UFORCES, 1, "UFORCES") \ diff --git a/ui.c b/ui.c @@ -31,7 +31,7 @@ lerp_v4(v4 a, v4 b, f32 t) } static s8 -das_shader_text(u32 shader) +das_shader_id_to_s8(DASShaderID shader) { s8 result = {0}; switch (shader) { @@ -331,7 +331,7 @@ draw_display_overlay(BeamformerCtx *ctx, Arena a, v2 mouse, Rect display_rect, B } { - s8 shader = das_shader_text(frame->das_shader_id); + s8 shader = das_shader_id_to_s8(frame->das_shader_id); v2 txt_s = measure_text(ui->font, shader); v2 txt_p = { .x = vr.pos.x + vr.size.w - txt_s.w - 16,