ogl_beamforming

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

Commit: 5a4ffd9e9003be95adddf615a1567b3b3bc6ca33
Parent: 60340a736c508f33a2c76a428336176b0e566d6f
Author: Randy Palamar
Date:   Sat, 26 Jul 2025 19:08:37 -0600

lib: delete legacy API

It keeps getting broken and its really not useful to anyone.

Diffstat:
Mbeamformer_parameters.h | 21---------------------
Mhelpers/ogl_beamformer_lib.c | 42------------------------------------------
Mhelpers/ogl_beamformer_lib_base.h | 6------
3 files changed, 0 insertions(+), 69 deletions(-)

diff --git a/beamformer_parameters.h b/beamformer_parameters.h @@ -143,20 +143,6 @@ typedef enum { X(interpolate, uint32_t, , bool, , "/* Perform Cubic Interpolation of RF Samples */") \ X(coherency_weighting, uint32_t, , bool, , "/* Apply coherency weighting to output data */") -#define BEAMFORMER_PARAMS_HEAD_V0 \ - X(channel_mapping, uint16_t, [256], uvec4, [32], "/* Transducer Channel to Verasonics Channel */") \ - X(uforces_channels, uint16_t, [256], uvec4, [32], "/* Channels used for virtual UFORCES elements */") \ - X(focal_depths, float, [256], vec4, [64], "/* [m] Focal Depths for each transmit of a RCA imaging scheme*/") \ - X(transmit_angles, float, [256], vec4, [64], "/* [degrees] Transmit Angles for each transmit of a RCA imaging scheme*/") \ - X(xdc_transform, float, [16] , mat4, , "/* IMPORTANT: column major order */") \ - X(dec_data_dim, uint32_t, [4] , uvec4, , "/* Samples * Channels * Acquisitions; last element ignored */") \ - X(xdc_element_pitch, float, [2] , vec2, , "/* [m] Transducer Element Pitch {row, col} */") \ - X(rf_raw_dim, uint32_t, [2] , uvec2, , "/* Raw Data Dimensions */") \ - X(transmit_mode, int32_t, , int, , "/* Method/Orientation of Transmit */") \ - X(decode, uint32_t, , uint, , "/* Decode or just reshape data */") \ - X(das_shader_id, uint32_t, , uint, , "") \ - X(time_offset, float, , float, , "/* pulse length correction time [s] */") - #define BEAMFORMER_PARAMS_HEAD \ X(xdc_transform, float, [16], mat4, , "/* IMPORTANT: column major order */") \ X(dec_data_dim, uint32_t, [4] , ivec4, , "/* Samples * Channels * Acquisitions; last element ignored */") \ @@ -177,13 +163,6 @@ typedef struct { BEAMFORMER_UI_PARAMS } BeamformerUIParameters; typedef struct { BEAMFORMER_PARAMS_HEAD } BeamformerParametersHead; typedef struct { BEAMFORMER_PARAMS_TAIL } BeamformerParametersTail; -typedef struct { - BEAMFORMER_PARAMS_HEAD_V0 - BEAMFORMER_UI_PARAMS - BEAMFORMER_PARAMS_TAIL - float _pad[1]; -} BeamformerParametersV0; - /* NOTE: This struct follows the OpenGL std140 layout. DO NOT modify unless you have * read and understood the rules, particulary with regards to _member alignment_ */ typedef struct { diff --git a/helpers/ogl_beamformer_lib.c b/helpers/ogl_beamformer_lib.c @@ -203,23 +203,6 @@ beamformer_push_pipeline(i32 *shaders, i32 shader_count, BeamformerDataKind data } b32 -set_beamformer_pipeline(i32 *stages, i32 stages_count) -{ - BeamformerDataKind data_kind = BeamformerDataKind_Int16; - switch (stages[0]) { - case BeamformerShaderKind_DecodeFloat:{ - data_kind = BeamformerDataKind_Float32; - }break; - case BeamformerShaderKind_DecodeFloatComplex:{ - data_kind = BeamformerDataKind_Float32Complex; - }break; - default:{}break; - } - b32 result = beamformer_push_pipeline(stages, stages_count, data_kind, 0); - return result; -} - -b32 beamformer_create_kaiser_low_pass_filter(f32 beta, f32 cutoff_frequency, i16 length, u8 slot) { b32 result = 0; @@ -384,31 +367,6 @@ beamformer_push_parameters_head(BeamformerParametersHead *bp, i32 timeout_ms) return result; } -b32 -set_beamformer_parameters(BeamformerParametersV0 *new_bp) -{ - b32 result = 1; - result &= beamformer_push_channel_mapping((i16 *)new_bp->channel_mapping, - countof(new_bp->channel_mapping), 0); - result &= beamformer_push_sparse_elements((i16 *)new_bp->uforces_channels, - countof(new_bp->uforces_channels), 0); - v2 focal_vectors[256]; - for (u32 i = 0; i < countof(focal_vectors); i++) - focal_vectors[i] = (v2){{new_bp->transmit_angles[i], new_bp->focal_depths[i]}}; - result &= beamformer_push_focal_vectors((f32 *)focal_vectors, countof(focal_vectors), 0); - result &= beamformer_push_parameters((BeamformerParameters *)&new_bp->xdc_transform, 0); - return result; -} - -b32 -send_data(void *data, u32 data_size) -{ - b32 result = 0; - if (beamformer_push_data(data, data_size, 0)) - result = beamformer_start_compute(-1); - return result; -} - function b32 beamformer_export_buffer(BeamformerExportContext export_context) { diff --git a/helpers/ogl_beamformer_lib_base.h b/helpers/ogl_beamformer_lib_base.h @@ -88,9 +88,3 @@ LIB_FN uint32_t beamformer_create_kaiser_low_pass_filter(float beta, float cutof LIB_FN int32_t beamformer_live_parameters_get_dirty_flag(void); LIB_FN uint32_t beamformer_set_live_parameters(BeamformerLiveImagingParameters *); LIB_FN BeamformerLiveImagingParameters *beamformer_get_live_parameters(void); - -////////////// -// Legacy API -LIB_FN uint32_t set_beamformer_parameters(BeamformerParametersV0 *); -LIB_FN uint32_t set_beamformer_pipeline(int32_t *stages, int32_t stages_count); -LIB_FN uint32_t send_data(void *data, uint32_t data_size);