Subversion Repositories AFRtranscoder

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 mjames 1
#include "ref.h"
2
 
3
void ref_max_f32(
4
  float32_t * pSrc,
5
  uint32_t blockSize,
6
  float32_t * pResult,
7
  uint32_t * pIndex)
8
{
9
        uint32_t i, ind=0;
10
        float32_t max=-FLT_MAX;
11
 
12
        for(i=0;i<blockSize;i++)
13
        {
14
                if (max < pSrc[i])
15
                {
16
                        max = pSrc[i];
17
                        ind = i;
18
                }
19
        }
20
        *pResult = max;
21
        *pIndex = ind;
22
}
23
 
24
void ref_max_q31(
25
  q31_t * pSrc,
26
  uint32_t blockSize,
27
  q31_t * pResult,
28
  uint32_t * pIndex)
29
{
30
        uint32_t i, ind=0;
31
        q31_t max=INT_MIN;
32
 
33
        for(i=0;i<blockSize;i++)
34
        {
35
                if (max < pSrc[i])
36
                {
37
                        max = pSrc[i];
38
                        ind = i;
39
                }
40
        }
41
        *pResult = max;
42
        *pIndex = ind;
43
}
44
 
45
void ref_max_q15(
46
  q15_t * pSrc,
47
  uint32_t blockSize,
48
  q15_t * pResult,
49
  uint32_t * pIndex)
50
{
51
        uint32_t i, ind=0;
52
        q15_t max=SHRT_MIN;
53
 
54
        for(i=0;i<blockSize;i++)
55
        {
56
                if (max < pSrc[i])
57
                {
58
                        max = pSrc[i];
59
                        ind = i;
60
                }
61
        }
62
        *pResult = max;
63
        *pIndex = ind;
64
}
65
 
66
void ref_max_q7(
67
  q7_t * pSrc,
68
  uint32_t blockSize,
69
  q7_t * pResult,
70
  uint32_t * pIndex)
71
{
72
        uint32_t i, ind=0;
73
        q7_t max=SCHAR_MIN;
74
 
75
        for(i=0;i<blockSize;i++)
76
        {
77
                if (max < pSrc[i])
78
                {
79
                        max = pSrc[i];
80
                        ind = i;
81
                }
82
        }
83
        *pResult = max;
84
        *pIndex = ind;
85
}