graydon
2025-07-24 b055c6bc3934400fdfab53321c88d534170346f9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/*
 * FIR_acc.h
 *
 *  Created on: 2022Äê5ÔÂ13ÈÕ
 *      Author: graydon
 */
 
#ifndef DRV_FIR_ACC_H_
#define DRV_FIR_ACC_H_
 
#ifdef __cplusplus
extern "C" {
#endif
 
#include "typedefs.h"
 
typedef enum {
    acc_idle,
    acc_processing,
    acc_completely,
}acc_status;
 
uvoid fir_acc_init(uvoid);
uvoid fir_acc_startup(uvoid);
typedef uvoid (*acc_completely_handler)(uvoid* content);
 
const uvoid* fir_acc_add(u16 win_size
        ,u16 tap
        ,ufloat* cp
        ,uvoid* content
        ,acc_completely_handler cb);
ufloat* fir_get_input_dataptr(const uvoid* tcb);
ufloat* fir_get_output_dataptr(const uvoid* tcb);
uvoid fir_acc_update_coeffs(const uvoid* tcb);
uvoid fir_acc_remove(const uvoid* tcb);
 
#ifdef __cplusplus
}
#endif
#endif /* DRV_FIR_ACC_H_ */