]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/JSBSim/math/FGFunction.h
Merge branch 'vivian/trainz'
[flightgear.git] / src / FDM / JSBSim / math / FGFunction.h
index 4c67ba46e851a9af672bdddd32eea38c0514794e..d122ffe20755952aa66a38b2704cbf067e51bde4 100755 (executable)
@@ -70,6 +70,9 @@ A function definition consists of an operation, a value, a table, or a property
 - quotient (takes 2 args)
 - pow (takes 2 args)
 - exp (takes 2 args)
+- log2 (takes 1 arg)
+- ln (takes 1 arg)
+- log10 (takes 1 arg)
 - abs (takes n args)
 - sin (takes 1 arg)
 - cos (takes 1 arg)
@@ -193,6 +196,7 @@ private:
   std::vector <FGParameter*> Parameters;
   FGPropertyManager* const PropertyManager;
   bool cached;
+  double invlog2val;
   std::string Prefix;
   std::string description_string;
   std::string property_string;
@@ -208,6 +212,9 @@ private:
   std::string quotient_string;
   std::string pow_string;
   std::string exp_string;
+  std::string log2_string;
+  std::string ln_string;
+  std::string log10_string;
   std::string abs_string;
   std::string sin_string;
   std::string cos_string;
@@ -226,7 +233,7 @@ private:
   double cachedValue;
   enum functionType {eTopLevel=0, eProduct, eDifference, eSum, eQuotient, ePow,
                      eExp, eAbs, eSin, eCos, eTan, eASin, eACos, eATan, eATan2,
-                     eMin, eMax, eAvg, eFrac, eInteger, eMod, eRandom} Type;
+                     eMin, eMax, eAvg, eFrac, eInteger, eMod, eRandom, eLog2, eLn, eLog10} Type;
   std::string Name;
   void bind(void);
   void Debug(int from);