Line data Source code
1 :
2 : #include "InterfaceHeader.h"
3 : double scale0;
4 : double scale;
5 : int N;
6 :
7 16 : short *idct (int *idata) {
8 16 : short *odata = malloc (N * sizeof (short ));
9 : double out_val;
10 : int n, k;
11 2858 : for (k = 0; k < N; k++) {
12 2842 : out_val = idata[0] / 2.0;
13 720596 : for (n = 1; n < N; n++) {
14 717754 : out_val += idata[n] * cos ((M_PI / N) * n * (k + 0.5));
15 : }
16 2842 : if (k == 0)
17 14 : out_val *= scale0;
18 : else
19 2828 : out_val *= scale;
20 2842 : odata[k] = (short ) out_val;
21 : }
22 16 : return odata;
23 : }
24 :
25 16 : short *GRAFT_INTERFACE (int $_host_length, int *$_host_arrayOfDefLines, cflow_depmap_t $_host_depmap, size_t $_host_jjj, size_t $_host_j, size_t $_host_num, size_t $_host_i, Symbol *$_host_main_sym, Symbol **$_host_symbols, RedirectInt $_host_stdout_bk, RedirectInt $_host_stderr_bk, RedirectFile *$_host_fpEr, RedirectFile *$_host_fp) {
26 16 : int $_init_dct_N_init1 = $_host_length;
27 16 : N = $_init_dct_N_init1;
28 16 : scale0 = sqrt (1.0 / N);
29 16 : scale = sqrt (2.0 / N);
30 : LABEL_init_dct1 :
31 : if (0) {
32 : }
33 : LABEL_write_silence1 :
34 : if (0) {
35 : }
36 : LABEL_write_silence2 :
37 : if (0) {
38 : }
39 : LABEL_write_silence3 :
40 : if (0) {
41 : }
42 : LABEL_dct1 :
43 : if (0) {
44 : }
45 : LABEL_dct2 :
46 : if (0) {
47 : }
48 16 : int *$_idct_idata1 = $_host_arrayOfDefLines;
49 : LABEL_transmit_packet1 :
50 16 : return idct ($_idct_idata1);
51 : }
52 :
|