Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.15)
cmake_minimum_required(VERSION 3.5.0)
if (NOT DEFINED GUI_BASE_DIR)
if (DEFINED ENV{GUI_BASE_DIR})
set(GUI_BASE_DIR $ENV{GUI_BASE_DIR})
Expand Down
2 changes: 1 addition & 1 deletion DependencyTests/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.15)
cmake_minimum_required(VERSION 3.22)
project(OpenEphysFFTWDependencySmokeTest LANGUAGES C)

if(NOT DEFINED FFTW_ROOT)
Expand Down
10 changes: 8 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@ This is a small library to wrap FFTW functionality useful for Open Ephys.

It is currently used by the [Phase Calculator](https://github.com/tne-lab/phase-calculator) and Real-Time Coherence plugins (under development).

`OpenEphysFFTWBatch.h` provides a lightweight, JUCE-independent batch API for
aligned single- and double-precision real-to-complex and complex-to-real
transforms. Batches are transform-major, with contiguous rows. Inverse
transforms follow FFTW's convention and are not normalized. Create plans off
real-time threads and reuse them.

## Dependency

OpenEphysFFTW uses complete non-threaded, shared double- and single-precision
Expand All @@ -24,8 +30,8 @@ previously staged platform directory:
cmake -S . -B Build -DFFTW_ROOT=/path/to/libs/linux
```

Automatic staging requires CMake 3.24 or newer. Builds using `FFTW_ROOT` retain
the project's CMake 3.15 minimum.
Automatic staging requires CMake 3.19 or newer. Builds using `FFTW_ROOT` retain
the project's existing CMake 3.5 minimum.

The bundles intentionally omit the separate long-double, MPI, OpenMP, and
threaded FFTW libraries. The `fftw3` and `fftw3f` libraries themselves are not
Expand Down
2 changes: 1 addition & 1 deletion Source/OpenEphysFFTW.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -353,4 +353,4 @@ void FFTWTransformableArray::hilbert()
fftReal();
freqDomainHilbert();
ifft();
}
}
4 changes: 3 additions & 1 deletion Source/OpenEphysFFTW.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ transform library
#include <CommonLibHeader.h>
#include <complex>

#include "OpenEphysFFTWBatch.h"

// forward-declare:
struct fftw_plan_s;

Expand Down Expand Up @@ -174,4 +176,4 @@ class FFTWTransformableArrayUsing : public FFTWTransformableArray
{}
};

#endif // OEP_FFTW_H_INCLUDED
#endif // OEP_FFTW_H_INCLUDED
Loading