AOT計算で呼び出し自体を早くする三角関数

Dependents:   NuMidi401 NuFM401

Revision:
10:5bccb4bc4f33
Parent:
9:d6153f6a5f75
Child:
11:19594eeb6f2b
--- a/AOTTrigon.h	Mon Dec 29 02:41:37 2014 +0000
+++ b/AOTTrigon.h	Mon Dec 29 08:58:51 2014 +0000
@@ -1,5 +1,6 @@
 #pragma once
 #include "math.h"
+#include "mbed.h"
 
 /** AOTTrigon class
  * AOT計算によって三角関数の計算を高速化します。
@@ -9,27 +10,27 @@
 public:
     AOTTrigon();
 
-    inline float sin(float);
-    inline float cos(float);
-    inline float tan(float);
+    inline double sin(double);
+    inline double cos(double);
+    inline double tan(double);
 
 private:
-    float *t_sin;
-    float rate;
+    double *t_sin;
+    double rate;
     const double pi;
 };
 
-inline float AOTTrigon::sin(float x)
+inline double AOTTrigon::sin(double x)
 {
     return t_sin[((int)(x * rate)) & 0xFF];
 }
 
-inline float AOTTrigon::cos(float x)
+inline double AOTTrigon::cos(double x)
 {
     return sin(x + pi / 2.0f);
 }
 
-inline float AOTTrigon::tan(float x)
+inline double AOTTrigon::tan(double x)
 {
     return sin(x) / cos(x);
 }
\ No newline at end of file