1
1
forked from 0ad/0ad
0ad/source
elexis a33fd55e81 Change GUI Object Setting values to be members of the IGUIObject inheriting class, rename AddSetting to RegisterSetting.
Improves performance for Draw calls by 3-5% according to a shady
benchmark.
Improves memory layout, since the values are not on the heap anymore but
in the using class.
Reduces complexity of the implementation and increases type safety.
Allows specifying default values at setting value construction time,
refs D2242.
Inspired by Vladislav introducing members that cached GetSetting values
in c016a74309/D325, refs #4039, ee38f0db37/D763, refs 4225,
a1c4c23ce4/D474, D406, which were formerly proposed to be removed in
D2241.

Differential Revision: https://code.wildfiregames.com/D2313
Tested on: clang 8.0.1, gcc 9.1.0, Jenkins vs2015
Comments By: Vladislav
This was SVN commit r23005.
2019-09-27 12:49:59 +00:00
..
collada Fix compiler warnings on VS 2015, refs #3439, refs #5069. 2018-03-10 09:58:53 +00:00
graphics Removes usages of duplication of Clamp function in graphics. Refs D1763. 2019-09-18 08:34:36 +00:00
gui Change GUI Object Setting values to be members of the IGUIObject inheriting class, rename AddSetting to RegisterSetting. 2019-09-27 12:49:59 +00:00
i18n Remove some unused Profiler.h and CLogger.h includes. 2019-09-07 13:35:45 +00:00
lib Removes duplication of Clamp function. 2019-09-26 21:14:21 +00:00
lobby Fix wrong GlooxScriptConversions include in 9023f4bebb / D2264 triggering VS2015 build warning but no clang build warning, refs #5596. 2019-09-17 20:39:09 +00:00
maths Removes duplication of Clamp function. 2019-09-26 21:14:21 +00:00
mocks More FreeBSD build fixes. 2012-01-30 06:21:11 +00:00
network Always inform clients why the server chose to disconnect them, i.e. stop using NDR_UNKNOWN as a disconnect reason when the reason is known and add a LOGWARNING for future authors. 2019-09-26 11:36:03 +00:00
pch Delete GUI.h umbrella include following 8d0cb1b954. 2019-09-20 13:11:18 +00:00
ps Support testing rejoins on turn 0, refs #3460, #4242, #5185, #5162, 2bf1dbfd13 2019-09-26 12:09:19 +00:00
renderer Do not send Reflection and Refraction matrices to shader when not needed 2019-09-22 14:56:22 +00:00
scriptinterface Fix missing JSAutoRequest before JS_ReportError in various commits. 2019-09-20 19:18:07 +00:00
simulation2 Support testing rejoins on turn 0, refs #3460, #4242, #5185, #5162, 2bf1dbfd13 2019-09-26 12:09:19 +00:00
soundmanager Removes duplication of Clamp function. 2019-09-26 21:14:21 +00:00
third_party Removes deprecated 'register' storage class from mongoose. Refs #3068 2019-07-18 06:28:51 +00:00
tools Delete GUI.h umbrella include following 8d0cb1b954. 2019-09-20 13:11:18 +00:00
main.cpp Alt+tab fix for ca9109be75 - call sound IdleTask in Atlas and swap buffers only once in Atlas. 2019-07-24 16:40:34 +00:00
test_setup.cpp Fix string format of the JS test assertion failure following 7c2e9027c2 (cxxtest expects a char* instead of a std::wstring, so newlines were printed as \n characters). 2017-10-13 21:56:45 +00:00