Index: source/gui/CChart.cpp =================================================================== --- source/gui/CChart.cpp +++ source/gui/CChart.cpp @@ -115,6 +115,23 @@ { PROFILE3("render chart"); + { + auto start = std::chrono::system_clock::now(); + std::string str = "axis_width"; + for (int i = 0; i < 500; ++i) + debug_printf("%f", GetSetting(str)); + auto end = std::chrono::system_clock::now(); + debug_printf("\nGetSetting: %ld\n", std::chrono::duration_cast((end - start)).count()); + } + + { + auto start = std::chrono::system_clock::now(); + for (int i = 0; i < 500; ++i) + debug_printf("%f", m_AxisWidth); + auto end = std::chrono::system_clock::now(); + debug_printf("\nMember: %ld\n", std::chrono::duration_cast((end - start)).count()); + } + if (m_Series.empty()) return; Index: source/gui/IGUIObject.h =================================================================== --- source/gui/IGUIObject.h +++ source/gui/IGUIObject.h @@ -35,6 +35,7 @@ #include #include +#include struct SGUIStyle; class JSObject; @@ -498,7 +499,7 @@ * @see SetupSettings() */ public: - std::map m_Settings; + std::unordered_map m_Settings; protected: // An object can't function stand alone