allenb 2004/09/16 12:40:38 PDT
Modified files:
modules/GMTL ChangeLog SConstruct
modules/GMTL/Test SConscript
modules/GMTL/Test/TestSuite/TestCases AxisAngleCompareTest.cpp
EulerAngleCompareTest.cpp
LineSegTest.cpp
MatrixCompareTest.cpp
MatrixStateTrackingTest.cpp
OutputTest.cpp
QuatCompareTest.cpp
VecTest.cpp VecTest.h
modules/GMTL/docs/faq gmtlfaq.doxygen
modules/GMTL/gmtl Containment.h Generate.h Intersection.h
Output.h Point.h SConscript TriOps.h
Vec.h VecBase.h VecOps.h VecOpsMeta.h
Version.h
Added files:
modules/GMTL/gmtl Config.h Helpers.h VecB.h VecExprMeta.h
Log:
New feature: Merge of branch with vector expression templates.
This merges the vector expression template code into the head.
As far as I know this code all works. It gets 2x performance increase is most cases I have tested and seems to eliminate all temporaries in vector expressions.
The code is far from perfect though and could use a good deal more tweeking and optimization.
Please also note (this is in the faq too) that user code that takes Vec/Point/VecBase objects as arguments will now not accept vector expressions for those
arguments.
Revision Changes Path
1.93 +4 -0 GGT/modules/GMTL/ChangeLog
1.37 +1 -1 GGT/modules/GMTL/SConstruct
1.3 +3 -1 GGT/modules/GMTL/Test/SConscript
1.3 +6 -4 GGT/modules/GMTL/Test/TestSuite/TestCases/AxisAngleCompareTest.cpp
1.4 +5 -5 GGT/modules/GMTL/Test/TestSuite/TestCases/EulerAngleCompareTest.cpp
1.9 +5 -5 GGT/modules/GMTL/Test/TestSuite/TestCases/LineSegTest.cpp
1.6 +4 -4 GGT/modules/GMTL/Test/TestSuite/TestCases/MatrixCompareTest.cpp
1.3 +5 -3 GGT/modules/GMTL/Test/TestSuite/TestCases/MatrixStateTrackingTest.cpp
1.9 +8 -3 GGT/modules/GMTL/Test/TestSuite/TestCases/OutputTest.cpp
1.3 +4 -4 GGT/modules/GMTL/Test/TestSuite/TestCases/QuatCompareTest.cpp
1.14 +150 -5 GGT/modules/GMTL/Test/TestSuite/TestCases/VecTest.cpp
1.30 +10 -3 GGT/modules/GMTL/Test/TestSuite/TestCases/VecTest.h
1.17 +64 -0 GGT/modules/GMTL/docs/faq/gmtlfaq.doxygen
1.2 +48 -0 GGT/modules/GMTL/gmtl/Config.h (new)
1.15 +9 -9 GGT/modules/GMTL/gmtl/Containment.h
1.84 +42 -31 GGT/modules/GMTL/gmtl/Generate.h
1.2 +77 -0 GGT/modules/GMTL/gmtl/Helpers.h (new)
1.23 +4 -4 GGT/modules/GMTL/gmtl/Intersection.h
1.15 +42 -18 GGT/modules/GMTL/gmtl/Output.h
1.17 +26 -8 GGT/modules/GMTL/gmtl/Point.h
1.7 +2 -0 GGT/modules/GMTL/gmtl/SConscript
1.8 +6 -6 GGT/modules/GMTL/gmtl/TriOps.h
1.19 +22 -9 GGT/modules/GMTL/gmtl/Vec.h
1.2 +413 -0 GGT/modules/GMTL/gmtl/VecB.h (new)
1.16 +160 -91 GGT/modules/GMTL/gmtl/VecBase.h
1.2 +213 -0 GGT/modules/GMTL/gmtl/VecExprMeta.h (new)
1.30 +103 -10 GGT/modules/GMTL/gmtl/VecOps.h
1.2 +9 -12 GGT/modules/GMTL/gmtl/VecOpsMeta.h
1.27 +5 -5 GGT/modules/GMTL/gmtl/Version.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/ChangeLog.diff?r1=1.92&r2=1.93&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/SConstruct.diff?r1=1.36&r2=1.37&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/Test/SConscript.diff?r1=1.2&r2=1.3&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/Test/TestSuite/TestCases/AxisAngleCompareTest.cpp.diff?r1=1.2&r2=1.3&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/Test/TestSuite/TestCases/EulerAngleCompareTest.cpp.diff?r1=1.3&r2=1.4&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/Test/TestSuite/TestCases/LineSegTest.cpp.diff?r1=1.8&r2=1.9&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/Test/TestSuite/TestCases/MatrixCompareTest.cpp.diff?r1=1.5&r2=1.6&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/Test/TestSuite/TestCases/MatrixStateTrackingTest.cpp.diff?r1=1.2&r2=1.3&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/Test/TestSuite/TestCases/OutputTest.cpp.diff?r1=1.8&r2=1.9&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/Test/TestSuite/TestCases/QuatCompareTest.cpp.diff?r1=1.2&r2=1.3&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/Test/TestSuite/TestCases/VecTest.cpp.diff?r1=1.13&r2=1.14&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/Test/TestSuite/TestCases/VecTest.h.diff?r1=1.29&r2=1.30&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/docs/faq/gmtlfaq.doxygen.diff?r1=1.16&r2=1.17&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Config.h?rev=1.2&content-type=text/plain
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Containment.h.diff?r1=1.14&r2=1.15&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Generate.h.diff?r1=1.83&r2=1.84&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Helpers.h?rev=1.2&content-type=text/plain
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Intersection.h.diff?r1=1.22&r2=1.23&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Output.h.diff?r1=1.14&r2=1.15&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Point.h.diff?r1=1.16&r2=1.17&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/SConscript.diff?r1=1.6&r2=1.7&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/TriOps.h.diff?r1=1.7&r2=1.8&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Vec.h.diff?r1=1.18&r2=1.19&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/VecB.h?rev=1.2&content-type=text/plain
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/VecBase.h.diff?r1=1.15&r2=1.16&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/VecExprMeta.h?rev=1.2&content-type=text/plain
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/VecOps.h.diff?r1=1.29&r2=1.30&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/VecOpsMeta.h.diff?r1=1.1&r2=1.2&diff_format=l
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Version.h.diff?r1=1.26&r2=1.27&diff_format=l
|