ogl_beamforming

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

Commit: 69a5320e4116301fe989550e38b0d1fdaa14e184
Parent: 9fca71254e69efeddbcba0524a4662d6bcfbb446
Author: Randy Palamar
Date:   Mon, 20 Apr 2026 20:50:49 -0600

lib: fix data_kind_test

Float16 stuff was not supposed to sneak in yet

Diffstat:
Mbeamformer.meta | 14+++++++++-----
Mgenerated/beamformer.meta.c | 7+++++++
Mlib/ogl_beamformer_lib.c | 6+++---
3 files changed, 19 insertions(+), 8 deletions(-)

diff --git a/beamformer.meta b/beamformer.meta @@ -2,12 +2,12 @@ @Enumeration(RCAOrientation [None Rows Columns]) @Enumeration(SamplingMode [2X 4X]) -@Table([name size elements]) DataKind +@Table([name size elements complex]) DataKind { - [Int16 2 1] - [Int16Complex 2 2] - [Float32 4 1] - [Float32Complex 4 2] + [Int16 2 1 0] + [Int16Complex 2 2 1] + [Float32 4 1 0] + [Float32Complex 4 2 1] } @Enumeration(EmissionKind [Sine Chirp]) @@ -196,6 +196,10 @@ @Expand(DataKind) ` $(size) * $(elements),` `};` `` + `read_only global b8 beamformer_data_kind_complex[] = {` + @Expand(DataKind) ` $(complex),` + `};` + `` `read_only global u8 beamformer_acquisition_kind_has_fixed_transmits[] = {` @Expand(AcquisitionKind) ` $(fixed_transmits),` `};` diff --git a/generated/beamformer.meta.c b/generated/beamformer.meta.c @@ -305,6 +305,13 @@ read_only global u8 beamformer_data_kind_byte_size[] = { 4 * 2, }; +read_only global b8 beamformer_data_kind_complex[] = { + 0, + 1, + 0, + 1, +}; + read_only global u8 beamformer_acquisition_kind_has_fixed_transmits[] = { 1, 0, diff --git a/lib/ogl_beamformer_lib.c b/lib/ogl_beamformer_lib.c @@ -251,9 +251,9 @@ beamformer_reserve_parameter_blocks(uint32_t count) function b32 validate_pipeline(i32 *shaders, u32 shader_count, BeamformerDataKind data_kind) { - b32 data_kind_test = Between(data_kind, 0, BeamformerDataKind_Count - 1) && - data_kind != BeamformerDataKind_Float16 && - data_kind != BeamformerDataKind_Float16Complex; + b32 data_kind_test = Between(data_kind, 0, BeamformerDataKind_Count - 1); + //data_kind != BeamformerDataKind_Float16 && + //data_kind != BeamformerDataKind_Float16Complex; if (!lib_error_check(data_kind_test, InvalidDataKind)) return 0;