diff --git a/src/enums.cpp b/src/enums.cpp index 485b9bf5..4b14f334 100644 --- a/src/enums.cpp +++ b/src/enums.cpp @@ -148,9 +148,11 @@ std::ostream &operator<<(std::ostream& os, VisualizerType vt) case VisualizerType::WaveFilled: os << "sound wave filled"; break; +# ifdef HAVE_FFTW3_H case VisualizerType::Spectrum: os << "frequency spectrum"; break; +# endif // HAVE_FFTW3_H case VisualizerType::Ellipse: os << "sound ellipse"; break; @@ -166,8 +168,10 @@ std::istream &operator>>(std::istream& is, VisualizerType &vt) vt = VisualizerType::Wave; else if (svt == "wave_filled") vt = VisualizerType::WaveFilled; +# ifdef HAVE_FFTW3_H else if (svt == "spectrum") vt = VisualizerType::Spectrum; +# endif // HAVE_FFTW3_H else if (svt == "ellipse") vt = VisualizerType::Ellipse; else diff --git a/src/enums.h b/src/enums.h index 50b3e9ce..131a931a 100644 --- a/src/enums.h +++ b/src/enums.h @@ -21,6 +21,7 @@ #ifndef NCMPCPP_ENUMS_H #define NCMPCPP_ENUMS_H +#include "config.h" #include enum class SpaceAddMode { AddRemove, AlwaysAdd }; @@ -39,7 +40,14 @@ enum class Design { Classic, Alternative }; std::ostream &operator<<(std::ostream &os, Design ui); std::istream &operator>>(std::istream &is, Design &ui); -enum class VisualizerType { Wave, WaveFilled, Spectrum, Ellipse }; +enum class VisualizerType { + Wave, + WaveFilled, +# ifdef HAVE_FFTW3_H + Spectrum, +# endif // HAVE_FFTW3_H + Ellipse +}; std::ostream &operator<<(std::ostream &os, VisualizerType vt); std::istream &operator>>(std::istream &is, VisualizerType &vt); diff --git a/src/visualizer.cpp b/src/visualizer.cpp index 15947971..fa4accbe 100644 --- a/src/visualizer.cpp +++ b/src/visualizer.cpp @@ -195,11 +195,17 @@ void Visualizer::spacePressed() Config.visualizer_type = VisualizerType::WaveFilled; break; case VisualizerType::WaveFilled: +# ifdef HAVE_FFTW3_H Config.visualizer_type = VisualizerType::Spectrum; +# else + Config.visualizer_type = VisualizerType::Ellipse; +# endif // HAVE_FFTW3_H break; +# ifdef HAVE_FFTW3_H case VisualizerType::Spectrum: Config.visualizer_type = VisualizerType::Ellipse; break; +# endif // HAVE_FFTW3_H case VisualizerType::Ellipse: Config.visualizer_type = VisualizerType::Wave; break;