diff options
author | Kadah_Coba <none@none> | 2011-07-04 14:20:52 -0700 |
---|---|---|
committer | Kadah_Coba <none@none> | 2011-07-04 14:20:52 -0700 |
commit | 57c30517817a6458edab6bfdfad7d7112467ca48 (patch) | |
tree | a2a9c3b76bfb258be53bcd4c12490c1d569260d8 /indra/llmath | |
parent | bb410e9576c582594e61b7f0dc0723eb5640f8ed (diff) |
Changes for STORM-1315 LLCalc
Removed dynamic allocation on mVariables and mConstants
CS cleanup
Diffstat (limited to 'indra/llmath')
-rw-r--r-- | indra/llmath/llcalc.cpp | 33 | ||||
-rw-r--r-- | indra/llmath/llcalc.h | 6 |
2 files changed, 16 insertions, 23 deletions
diff --git a/indra/llmath/llcalc.cpp b/indra/llmath/llcalc.cpp index f16dbec63f..597d0815fb 100644 --- a/indra/llmath/llcalc.cpp +++ b/indra/llmath/llcalc.cpp @@ -54,27 +54,20 @@ LLCalc* LLCalc::sInstance = NULL; LLCalc::LLCalc() : mLastErrorPos(0) { -// mUserVariables = new calc_map_t; - mVariables = new calc_map_t; - mConstants = new calc_map_t; - // Init table of constants - (*mConstants)["PI"] = F_PI; - (*mConstants)["TWO_PI"] = F_TWO_PI; - (*mConstants)["PI_BY_TWO"] = F_PI_BY_TWO; - (*mConstants)["SQRT_TWO_PI"] = F_SQRT_TWO_PI; - (*mConstants)["SQRT2"] = F_SQRT2; - (*mConstants)["SQRT3"] = F_SQRT3; - (*mConstants)["DEG_TO_RAD"] = DEG_TO_RAD; - (*mConstants)["RAD_TO_DEG"] = RAD_TO_DEG; - (*mConstants)["GRAVITY"] = GRAVITY; + mConstants["PI"] = F_PI; + mConstants["TWO_PI"] = F_TWO_PI; + mConstants["PI_BY_TWO"] = F_PI_BY_TWO; + mConstants["SQRT_TWO_PI"] = F_SQRT_TWO_PI; + mConstants["SQRT2"] = F_SQRT2; + mConstants["SQRT3"] = F_SQRT3; + mConstants["DEG_TO_RAD"] = DEG_TO_RAD; + mConstants["RAD_TO_DEG"] = RAD_TO_DEG; + mConstants["GRAVITY"] = GRAVITY; } LLCalc::~LLCalc() { - delete mConstants; - delete mVariables; -// delete mUserVariables; } //static @@ -93,17 +86,17 @@ LLCalc* LLCalc::getInstance() void LLCalc::setVar(const std::string& name, const F32& value) { - (*mVariables)[name] = value; + mVariables[name] = value; } void LLCalc::clearVar(const std::string& name) { - mVariables->erase(name); + mVariables.erase(name); } void LLCalc::clearAllVariables() { - mVariables->clear(); + mVariables.clear(); } /* @@ -122,7 +115,7 @@ bool LLCalc::evalString(const std::string& expression, F32& result) std::string expr_upper = expression; LLStringUtil::toUpper(expr_upper); - LLCalcParser calc(result, mConstants, mVariables); + LLCalcParser calc(result, &mConstants, &mVariables); mLastErrorPos = 0; std::string::iterator start = expr_upper.begin(); diff --git a/indra/llmath/llcalc.h b/indra/llmath/llcalc.h index 23c83f623e..cc31950cb6 100644 --- a/indra/llmath/llcalc.h +++ b/indra/llmath/llcalc.h @@ -69,12 +69,12 @@ public: private: std::string::size_type mLastErrorPos; - calc_map_t* mConstants; - calc_map_t* mVariables; + calc_map_t mConstants; + calc_map_t mVariables; // *TODO: Add support for storing user defined variables, and stored functions. // Will need UI work, and a means to save them between sessions. -// calc_map_t* mUserVariables; +// calc_map_t mUserVariables; // "There shall be only one" static LLCalc* sInstance; |