ooura_fft 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/CHANGELOG.md +17 -0
- data/CODE_OF_CONDUCT.md +132 -0
- data/LICENSE +21 -0
- data/LICENSE.txt +21 -0
- data/README.md +82 -0
- data/Rakefile +19 -0
- data/ext/ooura_fft/abi/fftsg/fftsg.c +3528 -0
- data/ext/ooura_fft/abi/fftsg/fftsg.h +307 -0
- data/ext/ooura_fft/abi/fftsg/readme.txt +167 -0
- data/ext/ooura_fft/extconf.rb +18 -0
- data/ext/ooura_fft/fft.c +307 -0
- data/ext/ooura_fft/internal/setting/ooura_fft.h +17 -0
- data/ext/ooura_fft/internal/solver/ooura_fft/cdft.h +52 -0
- data/ext/ooura_fft/internal/solver/ooura_fft/ddct.h +47 -0
- data/ext/ooura_fft/internal/solver/ooura_fft/ddst.h +47 -0
- data/ext/ooura_fft/internal/solver/ooura_fft/dfct.h +55 -0
- data/ext/ooura_fft/internal/solver/ooura_fft/dfst.h +52 -0
- data/ext/ooura_fft/internal/solver/ooura_fft/rdft.h +47 -0
- data/ext/ooura_fft/missing/ispow2l.c +9 -0
- data/ext/ooura_fft/missing/missing.h +21 -0
- data/ext/ooura_fft/ooura_fft/api.h +13 -0
- data/ext/ooura_fft/ooura_fft/ext_extern.h +18 -0
- data/ext/ooura_fft/ooura_fft/globals.h +9 -0
- data/ext/ooura_fft/ooura_fft.c +56 -0
- data/lib/ooura_fft/version.rb +6 -0
- data/lib/ooura_fft.rb +6 -0
- data/sig/ooura_fft.rbs +4 -0
- metadata +116 -0
@@ -0,0 +1,56 @@
|
|
1
|
+
/*******************************************************************************
|
2
|
+
ooura_fft.c - EntryPoint
|
3
|
+
|
4
|
+
$author$
|
5
|
+
*******************************************************************************/
|
6
|
+
#include <ruby.h>
|
7
|
+
#define USE_GLOBAL_VARIABLE
|
8
|
+
#include "ooura_fft/globals.h"
|
9
|
+
#include "missing/missing.h"
|
10
|
+
#include "internal/setting/ooura_fft.h"
|
11
|
+
#include "abi/fftsg/fftsg.h"
|
12
|
+
|
13
|
+
#ifndef HAVE_ISPOW2L
|
14
|
+
# include "missing/ispow2l.c"
|
15
|
+
#endif
|
16
|
+
|
17
|
+
// ABI of OouraFFT
|
18
|
+
#include "abi/fftsg/fftsg.c"
|
19
|
+
|
20
|
+
#define RDOC_PARSE_DUMMY 0
|
21
|
+
|
22
|
+
void
|
23
|
+
Init_ooura_fft(void)
|
24
|
+
{
|
25
|
+
/*
|
26
|
+
* Document-class: OouraFFT
|
27
|
+
*
|
28
|
+
* We provide Professor Ooura's FFT as a front end.
|
29
|
+
*
|
30
|
+
* There are six FFT routines available, each with the following:
|
31
|
+
* cdft: Complex Discrete Fourier Transform
|
32
|
+
* rdft: Real Discrete Fourier Transform
|
33
|
+
* ddct: Discrete Cosine Transform
|
34
|
+
* ddst: Discrete Sine Transform
|
35
|
+
* dfct: Cosine Transform of RDFT (Real Symmetric DFT)
|
36
|
+
* dfst: Sine Transform of RDFT (Real Anti-symmetric DFT)
|
37
|
+
*
|
38
|
+
*
|
39
|
+
* Copyright:
|
40
|
+
* :: (C) 1996-2001 Takuya OOURA
|
41
|
+
*/
|
42
|
+
rb_mOouraFFT = rb_define_module("OouraFFT");
|
43
|
+
|
44
|
+
#if RDOC_PARSE_DUMMY
|
45
|
+
rb_define_module_function(rb_mOouraFFT, "cdft", fft_cdft, -1); // in fft.c
|
46
|
+
rb_define_module_function(rb_mOouraFFT, "rdft", fft_rdft, -1); // in fft.c
|
47
|
+
rb_define_module_function(rb_mOouraFFT, "ddct", fft_ddct, -1); // in fft.c
|
48
|
+
rb_define_module_function(rb_mOouraFFT, "ddst", fft_ddst, -1); // in fft.c
|
49
|
+
rb_define_module_function(rb_mOouraFFT, "dfct", fft_dfct, -1); // in fft.c
|
50
|
+
rb_define_module_function(rb_mOouraFFT, "dfst", fft_dfst, -1); // in fft.c
|
51
|
+
/* The using thread model name. Supports in Windows and POSIX. */
|
52
|
+
rb_define_const(rb_mOouraFFT, "USING_THREAD", rb_str_new_cstr((const char *)USING_THREAD));
|
53
|
+
#else
|
54
|
+
InitVM(FFT);
|
55
|
+
#endif
|
56
|
+
}
|
data/lib/ooura_fft.rb
ADDED
data/sig/ooura_fft.rbs
ADDED
metadata
ADDED
@@ -0,0 +1,116 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: ooura_fft
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- tribusonz
|
8
|
+
autorequire:
|
9
|
+
bindir: exe
|
10
|
+
cert_chain: []
|
11
|
+
date: 2024-10-24 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rake-compiler
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
description: Front-end of OouraFFT for Ruby.
|
56
|
+
email:
|
57
|
+
- xwisepp62543@gmail.com
|
58
|
+
executables: []
|
59
|
+
extensions:
|
60
|
+
- ext/ooura_fft/extconf.rb
|
61
|
+
extra_rdoc_files: []
|
62
|
+
files:
|
63
|
+
- CHANGELOG.md
|
64
|
+
- CODE_OF_CONDUCT.md
|
65
|
+
- LICENSE
|
66
|
+
- LICENSE.txt
|
67
|
+
- README.md
|
68
|
+
- Rakefile
|
69
|
+
- ext/ooura_fft/abi/fftsg/fftsg.c
|
70
|
+
- ext/ooura_fft/abi/fftsg/fftsg.h
|
71
|
+
- ext/ooura_fft/abi/fftsg/readme.txt
|
72
|
+
- ext/ooura_fft/extconf.rb
|
73
|
+
- ext/ooura_fft/fft.c
|
74
|
+
- ext/ooura_fft/internal/setting/ooura_fft.h
|
75
|
+
- ext/ooura_fft/internal/solver/ooura_fft/cdft.h
|
76
|
+
- ext/ooura_fft/internal/solver/ooura_fft/ddct.h
|
77
|
+
- ext/ooura_fft/internal/solver/ooura_fft/ddst.h
|
78
|
+
- ext/ooura_fft/internal/solver/ooura_fft/dfct.h
|
79
|
+
- ext/ooura_fft/internal/solver/ooura_fft/dfst.h
|
80
|
+
- ext/ooura_fft/internal/solver/ooura_fft/rdft.h
|
81
|
+
- ext/ooura_fft/missing/ispow2l.c
|
82
|
+
- ext/ooura_fft/missing/missing.h
|
83
|
+
- ext/ooura_fft/ooura_fft.c
|
84
|
+
- ext/ooura_fft/ooura_fft/api.h
|
85
|
+
- ext/ooura_fft/ooura_fft/ext_extern.h
|
86
|
+
- ext/ooura_fft/ooura_fft/globals.h
|
87
|
+
- lib/ooura_fft.rb
|
88
|
+
- lib/ooura_fft/version.rb
|
89
|
+
- sig/ooura_fft.rbs
|
90
|
+
homepage: https://github.com/tribusonz-2/ruby-ooura_fft
|
91
|
+
licenses:
|
92
|
+
- MIT
|
93
|
+
metadata:
|
94
|
+
homepage_uri: https://github.com/tribusonz-2/ruby-ooura_fft
|
95
|
+
source_code_uri: https://github.com/tribusonz-2/ruby-ooura_fft
|
96
|
+
changelog_uri: https://github.com/tribusonz-2/ruby-ooura_fft/changelog.md
|
97
|
+
post_install_message:
|
98
|
+
rdoc_options: []
|
99
|
+
require_paths:
|
100
|
+
- lib
|
101
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
102
|
+
requirements:
|
103
|
+
- - ">="
|
104
|
+
- !ruby/object:Gem::Version
|
105
|
+
version: 3.0.0
|
106
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
requirements: []
|
112
|
+
rubygems_version: 3.5.22
|
113
|
+
signing_key:
|
114
|
+
specification_version: 4
|
115
|
+
summary: Front-end of OouraFFT for Ruby
|
116
|
+
test_files: []
|