File burst_acq_core.h¶
File List > burst_acq > burst_acq_core.h
Go to the documentation of this file
#ifndef BURST_ACQ_CORE_H
#define BURST_ACQ_CORE_H
#include "acq/acq_core.h"
#include "clib_common.h"
#include "jm_perf.h"
#ifdef __cplusplus
extern "C"
{
#endif
typedef struct
{
acq_state_t *engine;
} burst_acq_state_t;
burst_acq_state_t *burst_acq_create (const uint8_t *code, size_t code_len,
size_t reps, size_t spc,
double chip_rate, double cn0_dbhz,
double doppler_uncertainty, double pfa,
double pd, int noise_mode);
void burst_acq_destroy (burst_acq_state_t *state);
void burst_acq_reset (burst_acq_state_t *state);
size_t burst_acq_push (burst_acq_state_t *state, const float _Complex *x,
size_t n_in, acq_result_t *result,
size_t max_results);
int burst_acq_configure_search_raw (burst_acq_state_t *state,
size_t doppler_bins, size_t n_noncoh);
int burst_acq_set_max_peaks (burst_acq_state_t *state, size_t n);
/* ── Serializable state — forwards straight to the embedded engine's own
* triplet (the serialized bytes ARE the shared acq_state_t's own state;
* no separate format needed). */
size_t burst_acq_state_bytes (const burst_acq_state_t *state);
void burst_acq_get_state (const burst_acq_state_t *state, void *blob);
int burst_acq_set_state (burst_acq_state_t *state, const void *blob);
#ifdef __cplusplus
}
#endif
#endif /* BURST_ACQ_CORE_H */