Harald Welte | 78861c0 | 2020-05-14 13:28:07 +0200 | [diff] [blame^] | 1 | #pragma once |
| 2 | #include <osmocom/core/bits.h> |
| 3 | #include <osmocom/core/fsm.h> |
| 4 | |
| 5 | enum osmo_tray_sync_pat_id { |
| 6 | OSMO_TRAU_SYNCP_16_FR_EFR, |
| 7 | OSMO_TRAU_SYNCP_8_HR, |
| 8 | OSMO_TRAU_SYNCP_8_AMR_LOW, |
| 9 | OSMO_TRAU_SYNCP_8_AMR_6K7, |
| 10 | OSMO_TRAU_SYNCP_8_AMR_7K4, |
| 11 | }; |
| 12 | |
| 13 | typedef void (*frame_out_cb_t)(void *user_data, const ubit_t *bits, unsigned int num_bits); |
| 14 | |
| 15 | struct osmo_fsm_inst * |
| 16 | osmo_trau_sync_alloc(void *ctx, const char *name, frame_out_cb_t frame_out_cb, |
| 17 | enum osmo_tray_sync_pat_id pat_id, void *user_data); |
| 18 | |
| 19 | void osmo_trau_sync_rx_ubits(struct osmo_fsm_inst *fi, const ubit_t *bits, size_t n_bits); |