ogl_beamformer_lib.h (891B)
1 /* NOTE: mex.h can still be used to get access to functions that print to the matlab console */ 2 #include <mex.h> 3 4 #include <stddef.h> 5 #include <stdint.h> 6 7 typedef uint8_t u8; 8 typedef int16_t i16; 9 typedef uint16_t u16; 10 typedef int32_t i32; 11 typedef uint32_t u32; 12 typedef uint32_t b32; 13 typedef float f32; 14 typedef double f64; 15 typedef ptrdiff_t size; 16 17 #if defined(_WIN32) 18 #define LIB_FN __declspec(dllexport) 19 #else 20 #define LIB_FN 21 #endif 22 23 typedef struct { f32 x, y; } v2; 24 typedef struct { f32 x, y, z, w; } v4; 25 typedef struct { u32 x, y; } uv2; 26 typedef struct { u32 x, y, z, w; } uv4; 27 28 #include "../beamformer_parameters.h" 29 30 LIB_FN void set_beamformer_parameters(char *shm_name, BeamformerParameters *); 31 LIB_FN void set_beamformer_pipeline(char *shm_name, i32 *stages, i32 stages_count); 32 LIB_FN void send_data(char *pipe_name, char *shm_name, i16 *data, uv2 data_dim);