From 5e56f985722eefe4b117c1a7ff7e22021dbee8e4 Mon Sep 17 00:00:00 2001 From: Rytis Bizauskas <luxcapto@gmail.com> Date: Sat, 18 Jun 2016 00:36:27 -0500 Subject: [PATCH] Made examples compliant with C++11. Compiles with gcc 6.1. --- examples/cpp/lib/svl/Utils.h | 3 ++- examples/cpp/rings.h | 34 +++++++++++++++++----------------- examples/cpp/spokes.h | 24 ++++++++++++------------ 3 files changed, 31 insertions(+), 30 deletions(-) diff --git a/examples/cpp/lib/svl/Utils.h b/examples/cpp/lib/svl/Utils.h index 471f86a..32599d6 100644 --- a/examples/cpp/lib/svl/Utils.h +++ b/examples/cpp/lib/svl/Utils.h @@ -37,7 +37,8 @@ inline Double vl_rand() { return(rand() / (RAND_MAX + 1.0)); } #endif -#ifndef __CMATH__ +#if !defined __CMATH__ && !defined _GLIBCXX_CMATH + // GNU's complex.h defines its own abs(double) #ifdef VL_HAS_ABSF inline Float abs(Float x) diff --git a/examples/cpp/rings.h b/examples/cpp/rings.h index b6ae179..6be22c4 100644 --- a/examples/cpp/rings.h +++ b/examples/cpp/rings.h @@ -29,23 +29,23 @@ public: reseed(); } - static const float xyzSpeed = 0.6; - static const float xyzScale = 0.08; - static const float wSpeed = 0.2; - static const float wRate = 0.015; - static const float ringScale = 1.5; - static const float ringScaleRate = 0.01; - static const float ringDepth = 0.2; - static const float wanderSpeed = 0.04; - static const float wanderSize = 1.2; - static const float brightnessContrast = 8.0; - static const float colorContrast = 4.0; - static const float targetBrightness = 0.1; - static const float thresholdGain = 0.1; - static const float thresholdStepLimit = 0.02; - static const float initialThreshold = -1.0f; - static const unsigned brightnessOctaves = 4; - static const unsigned colorOctaves = 2; + static constexpr float xyzSpeed = 0.6; + static constexpr float xyzScale = 0.08; + static constexpr float wSpeed = 0.2; + static constexpr float wRate = 0.015; + static constexpr float ringScale = 1.5; + static constexpr float ringScaleRate = 0.01; + static constexpr float ringDepth = 0.2; + static constexpr float wanderSpeed = 0.04; + static constexpr float wanderSize = 1.2; + static constexpr float brightnessContrast = 8.0; + static constexpr float colorContrast = 4.0; + static constexpr float targetBrightness = 0.1; + static constexpr float thresholdGain = 0.1; + static constexpr float thresholdStepLimit = 0.02; + static constexpr float initialThreshold = -1.0f; + static constexpr unsigned brightnessOctaves = 4; + static constexpr unsigned colorOctaves = 2; // Sample colors along a curved path through a texture Texture palette; diff --git a/examples/cpp/spokes.h b/examples/cpp/spokes.h index ac78469..3979693 100644 --- a/examples/cpp/spokes.h +++ b/examples/cpp/spokes.h @@ -18,18 +18,18 @@ public: SpokesEffect() : spin(0) {} - static const float cycleRate = 0.001; - static const float wanderSpeed = 40.0; - static const float wanderSize = 1.8; - static const float hueScale = 5.0; - static const float hueRate = 1.0; - static const float satRate = 10.0; - static const float hueShift = 0.02; - static const float spinSpeed = 3.0; - static const float spinRate = 100.0; - static const float noiseDepth = 3.0; - static const float noiseScale = 0.2; - static const float noiseSpeed = 1000.0; + static constexpr float cycleRate = 0.001; + static constexpr float wanderSpeed = 40.0; + static constexpr float wanderSize = 1.8; + static constexpr float hueScale = 5.0; + static constexpr float hueRate = 1.0; + static constexpr float satRate = 10.0; + static constexpr float hueShift = 0.02; + static constexpr float spinSpeed = 3.0; + static constexpr float spinRate = 100.0; + static constexpr float noiseDepth = 3.0; + static constexpr float noiseScale = 0.2; + static constexpr float noiseSpeed = 1000.0; // State variables float spin; -- GitLab