Sam Edwards
7790f8429d
general: Fully qualify header references into the std namespace
...
Closes #341
2018-06-07 10:35:12 +02:00
rdb
9fad3dba60
general: remove macros for compatibility with non-C++11 compilers
...
Now that we require MSVC 2015, we no longer need all this nonsense, so we can write cleaner code.
2018-05-23 23:33:05 +02:00
rdb
41d26284d7
Fix various compilation issues on Mac.
...
Work around bugs in Apple Clang that ships with XCode 4 with C++11 by disabling constexpr
Use move() instead of std::move()
It also looks like we'll have to continue using pystub for tools that use libp3interrogatedb for now.
2017-01-08 17:17:56 -05:00
rdb
245d1241c9
Restore assign() for vector classes
2016-03-28 22:36:31 +02:00
tobspr
0fcfb8e372
New file headers, new comment style
2016-02-17 17:47:48 +01:00
tobspr
a9e18f9d24
Improve Vector implementations: - Remove unecessary assignment operators - Add normalize() method - Use properties for certain swizzle masks - Add constexpr where appropriate
2016-01-03 22:02:00 +01:00
rdb
8ecf6a7b9f
Fix getattr() and hasattr() of vector classes when invalid attribute name is used
2015-06-21 15:33:42 +02:00
rdb
3371df8403
Fix tp_compare, better __repr__/__str__ handling
2015-03-25 19:36:35 +01:00
rdb
6db5d0dc11
Huge cppparser and interrogate overhaul, bringing:
...
* Better support for typedefs
* Same code should compile for both 32-bit and 64-bit
* C++11 typed enum support
* Synthesize __setitem__ when operator [] returns reference
* Rewrite coerce system to have better performance
* Change semantics of __getattr__ and __setattr__ to match
Python's, add __getattribute__, __delattr__ and __delitem__
* Improve performance of slot functions a bit more
* Reduce memory overhead of type system
* Some support for wrapping arrays of numeric types
* C++11 character type support in cppparser
* Chars are handled as strings of length 1
* Template functions for CreatePyInstance that use runtime type map
* More functions from dtool as extension functions
* Code cleanup
2014-12-30 16:43:52 +01:00
rdb
cb66a51bbc
fmin and fmax should be const methods
2014-12-18 16:58:03 -05:00
David Rose
5d5150c5aa
componentwise_mult()
2014-10-28 21:46:15 +00:00
rdb
5dae464394
Add integer vectors. Also add __pow__ operator to vectors.
2014-06-11 18:01:50 +00:00
rdb
cc3bae7e76
Big interrogate cleanup, new extension system, add __iter__ support, add buffer protocol support
2013-09-17 10:11:43 +00:00
David Rose
42e8f806f1
leave lvecbase2/3 and lmatrix3 unaligned; it's so much cleaner
2011-12-19 14:17:26 +00:00
David Rose
c5c21a566a
UnalignedLVecBase etc, remove lerp etc, moving towards Eigen on win32
2011-12-18 16:30:31 +00:00
David Rose
fd75c89949
whoops, overloaded LINMATH_ALIGN by mistake
2011-12-18 02:03:58 +00:00
David Rose
33b9a1e1cf
integrate Eigen
2011-12-16 14:17:48 +00:00
David Rose
8ebd82fbcc
support cross-compatibility of 32-bit and 64-bit bam files
2011-10-31 22:24:35 +00:00
rdb
c32b599370
Port linmath classes to the new extension system
2011-01-03 09:02:23 +00:00
rdb
defc9bf266
Add swizzling/write masks to the Point classes. Also, use the PySequence interface for write masks. Although totally pointless, I can now do v.xy = ['inf', 'nan'] or v.wxzyw = range(5) .
2010-12-23 21:48:50 +00:00
rdb
8cd721b150
Write masks and swizzle masks for all vecbase and vector classes (e.g. ability to do v.xy *= 1.5 or v.wz = Vec2(1, 2) and stuff)
2010-12-21 11:09:43 +00:00
rdb
e1347210f6
Swizzle masks for LVecBase* (ability to access components as properties like vec.x, but also like vec.xyz or vec.zyxw in any order). I'll do write masks tomorrow or so
2010-12-20 21:49:29 +00:00
David Rose
816ddc0387
low-level support for python copy and pickle modules
2009-12-10 01:09:06 +00:00
David Rose
12cc0232fc
add LVecBase3::project, etc., suggested by nik
2009-04-10 18:32:38 +00:00
David Rose
26d832b486
fix compiler warnings
2008-11-10 20:23:40 +00:00
David Rose
58e0537e3c
wide interrogate improvements: sequence protocol, MAKE_SEQ, __setitem__, and parameter coercion
2008-11-07 21:12:42 +00:00
David Rose
fb9c56432a
we are now using the modified BSD license
2008-05-28 18:37:20 +00:00
Zachary Pavlov
220d33e006
okay, this is going to be a big commit. The basic idea here is to add transparent defines to allow for directory based dlls later. This will let us build tau again. ugggg
2007-07-20 23:02:51 +00:00
David Rose
8a78fffd8f
multithreading optimizations, tau profiler, related changes
2006-04-05 19:36:05 +00:00
Josh Yelon
947294fe99
Added fmax and fmin operators to vector
2006-02-07 20:18:07 +00:00
David Rose
09878b64b0
use python_repr() to make linmath pickleable
2005-09-14 00:09:18 +00:00
David Rose
dbb24d9cc9
phash_map, etc.
2004-10-02 05:07:16 +00:00
David Rose
843c0331ae
update license, change remaining local #includes to use quotation marks
2004-02-13 19:27:33 +00:00
Dave Schuyler
078f4c50c5
small changes and added add_x() to vectors
2003-09-05 04:31:19 +00:00
cxgeorge
da9b315099
avoid name collisions with stlport
2001-12-10 02:52:47 +00:00
David Rose
2f4e207edb
Update copyright header
2001-05-25 21:27:38 +00:00
David Rose
fcb24f02ef
remove tab characters
2001-05-25 15:56:49 +00:00
David Rose
57b4db99c5
*** empty log message ***
2001-05-14 22:10:12 +00:00
cxgeorge
23c5d85166
hand-optimize linmath, force inlining
2001-04-28 02:58:58 +00:00
David Rose
ee8db5b5b5
*** empty log message ***
2001-04-04 21:40:58 +00:00