OpenShot Library | OpenShotAudio  0.2.1
juce_dsp.cpp
1 /*
2  ==============================================================================
3 
4  This file is part of the JUCE library.
5  Copyright (c) 2017 - ROLI Ltd.
6 
7  JUCE is an open source library subject to commercial or open-source
8  licensing.
9 
10  By using JUCE, you agree to the terms of both the JUCE 5 End-User License
11  Agreement and JUCE 5 Privacy Policy (both updated and effective as of the
12  27th April 2017).
13 
14  End User License Agreement: www.juce.com/juce-5-licence
15  Privacy Policy: www.juce.com/juce-5-privacy-policy
16 
17  Or: You may also use this code under the terms of the GPL v3 (see
18  www.gnu.org/licenses).
19 
20  JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
21  EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
22  DISCLAIMED.
23 
24  ==============================================================================
25 */
26 
27 #ifdef JUCE_DSP_H_INCLUDED
28  /* When you add this cpp file to your project, you mustn't include it in a file where you've
29  already included any other headers - just put it inside a file on its own, possibly with your config
30  flags preceding it, but don't include anything else. That also includes avoiding any automatic prefix
31  header files that the compiler may be using.
32  */
33  #error "Incorrect use of JUCE cpp file"
34 #endif
35 
36 #include "juce_dsp.h"
37 
38 #if ! JUCE_HAS_CONSTEXPR
39  #ifndef JUCE_DEMO_RUNNER
40  #error "The juce_dsp module requires a compiler that supports constexpr"
41  #endif
42 #else
43 
44 #ifndef JUCE_USE_VDSP_FRAMEWORK
45  #define JUCE_USE_VDSP_FRAMEWORK 1
46 #endif
47 
48 #if (JUCE_MAC || JUCE_IOS) && JUCE_USE_VDSP_FRAMEWORK
49  #include <Accelerate/Accelerate.h>
50 #else
51  #undef JUCE_USE_VDSP_FRAMEWORK
52 #endif
53 
54 #if JUCE_DSP_USE_INTEL_MKL
55  #include <mkl_dfti.h>
56 #endif
57 
58 #include "processors/juce_FIRFilter.cpp"
59 #include "processors/juce_IIRFilter.cpp"
60 #include "processors/juce_LadderFilter.cpp"
61 #include "processors/juce_Oversampling.cpp"
62 #include "maths/juce_SpecialFunctions.cpp"
63 #include "maths/juce_Matrix.cpp"
64 #include "maths/juce_LookupTable.cpp"
65 #include "frequency/juce_FFT.cpp"
66 #include "frequency/juce_Convolution.cpp"
67 #include "frequency/juce_Windowing.cpp"
68 #include "filter_design/juce_FilterDesign.cpp"
69 
70 #if JUCE_USE_SIMD
71  #if defined(__i386__) || defined(__amd64__) || defined(_M_X64) || defined(_X86_) || defined(_M_IX86)
72  #ifdef __AVX2__
73  #include "native/juce_avx_SIMDNativeOps.cpp"
74  #else
75  #include "native/juce_sse_SIMDNativeOps.cpp"
76  #endif
77  #elif defined(__arm__) || defined(_M_ARM) || defined (__arm64__) || defined (__aarch64__)
78  #include "native/juce_neon_SIMDNativeOps.cpp"
79  #else
80  #error "SIMD register support not implemented for this platform"
81  #endif
82 #endif
83 
84 #if JUCE_UNIT_TESTS
85  #include "maths/juce_Matrix_test.cpp"
86  #include "maths/juce_LogRampedValue_test.cpp"
87 
88  #if JUCE_USE_SIMD
89  #include "containers/juce_SIMDRegister_test.cpp"
90  #endif
91 
92  #include "containers/juce_AudioBlock_test.cpp"
93  #include "frequency/juce_FFT_test.cpp"
94  #include "processors/juce_FIRFilter_test.cpp"
95 #endif
96 
97 #endif