rdb
53d10aa3a3
Fix sticky exception when passing over overloads with single string arg.
2015-03-28 20:51:08 +01:00
Sam Edwards
64120cd7d8
general: Add missing includes and forward-declarations.
2015-03-28 19:27:48 +01:00
rdb
477aa4bdfe
Fix various Windows build issues
2015-03-27 23:17:35 +01:00
rdb
f624cdcac0
Fix various Mac OS X bugs and build issues
2015-03-25 19:43:21 +01:00
rdb
c9f8ccf901
Fix interrogate bug with detecting parameter coercion possibility
2015-03-25 19:37:00 +01:00
rdb
3371df8403
Fix tp_compare, better __repr__/__str__ handling
2015-03-25 19:36:35 +01:00
rdb
38d02fadf9
Fix various interrogate issues with parsing PhysX headers
2015-03-23 19:27:29 +01:00
rdb
de0b0dd879
Fix various issues with Python 3 support, fix samples to work with Python 3
2015-03-23 00:32:47 +01:00
rdb
b63d5fbe8c
Support cyclic garbage collection through PythonTask objects
2015-03-15 12:24:06 +01:00
rdb
e608fa69c7
Merge branch 'master' into interrogate-overhaul
...
Conflicts:
dtool/src/cppparser/cppBison.yxx
dtool/src/interrogate/interfaceMakerPythonNative.cxx
2015-03-14 16:47:31 +01:00
rdb
68cf8cf44f
Fix various issues with API documentation generator
2015-03-13 18:40:26 +01:00
rdb
04d4309b14
SSE2-enhanced sRGB encode (with runtime CPU detection)
2015-03-01 11:46:52 +01:00
rdb
da3f642902
Various interrogate improvements
2015-02-27 15:01:42 +01:00
rdb
238cbad2a1
Merge branch 'master' into interrogate-overhaul
2015-02-27 12:48:33 +01:00
rdb
db87bc7914
PointerToArray fixes, Windows build fixes, more move constructors
2015-02-27 12:45:11 +01:00
deflected
2dd1b5e3b3
dtool: Fixed building under FreeBSD
...
There is missing define in dtoolutil which
prevent building of dtool under FreeBSD.
Signed-off-by: deflected <deflected@github>
2015-02-20 11:58:28 +02:00
rdb
e29efdd0c9
Don't use swap() as fallback for std::move(), it's more picky
2015-02-15 20:26:23 +01:00
rdb
9513046e59
Various substantial changes to Interrogate:
...
* Allow arbitrary selection of optional keyword arguments in some cases
* Reduce code bloat of generated bindings
* Work around awkward resolution of set_shader_input overloads
* Document the code a bit better
* Make coercion a bit cleaner for reference counted types
* A few optimization tweaks
* Use generic errors in NDEBUG build to reduce size of string pool
2015-02-15 13:48:13 +01:00
rdb
4dc4c9eb3d
Merge branch 'master' into interrogate-overhaul
...
Conflicts:
dtool/src/interrogate/functionRemap.cxx
dtool/src/interrogate/interfaceMakerPythonNative.cxx
panda/src/event/pythonTask.cxx
panda/src/express/multifile.h
panda/src/express/pointerToArray.I
panda/src/mathutil/config_mathutil.N
panda/src/putil/config_util.N
panda/src/putil/doubleBitMask.h
2015-02-11 14:41:58 +01:00
rdb
a6eb3fa442
Make NodePathCollection and TextureCollection constructors extensions
2015-02-11 14:14:03 +01:00
rdb
cbd70ad8af
Move all Python bindings out of core DLLs into the .pyd files.
2015-02-10 14:30:51 +01:00
rdb
4f27ed600f
Attempt to work around glibc bug when using clang with -ffast-math
2015-02-09 22:15:41 +01:00
rdb
bd7d86ba9e
We use /fp:fast on Windows, let's be consistent and use -ffast-math on other platforms in release builds
2015-02-09 20:39:16 +01:00
rdb
27582ff447
Remove HAVE_GL(ES) from dtool_config.h, we don't use it in source
2015-02-09 17:57:12 +01:00
rdb
e9a64736a3
Fix 32-bit Windows compilation issues with Eigen
2015-02-09 16:51:59 +01:00
rdb
bd86907181
Fix assortment of compilation issues and annoyances
2015-02-08 23:25:11 +01:00
rdb
b2f73d0877
Merge branch 'master' into interrogate-overhaul
2015-02-08 12:11:19 +01:00
rdb
01cd4fcbd5
Fix compile error on clang when C++11 support is disabled
2015-02-07 18:15:56 +01:00
rdb
33249c5f43
Make pregenerated bison files up-to-date (for people without bison)
2015-02-07 17:40:31 +01:00
rdb
028c09add5
Implicit cast string to InternalName in c++, also optimize for string literals
2015-02-07 16:43:25 +01:00
rdb
eaabc1bfa5
Add ConfigVariableColor
2015-02-05 13:34:52 +01:00
rdb
0a64bdb33b
Fix MouseRecorder & let PandaNode inherit from TypedWritableReferenceCount
2015-01-24 16:12:04 +01:00
rdb
3423a09f4f
Merge branch 'master' of github.com:panda3d/panda3d
2015-01-21 22:12:53 +01:00
rdb
f68e8cdee4
More reliable and hopefully less crashy way of determining libp3dtool location
2015-01-21 20:32:48 +01:00
rdb
98cbf5c309
Remove unnecessary field
2015-01-19 00:08:39 +01:00
rdb
b5a49efc2e
Merge branch 'master' into interrogate-overhaul
2015-01-07 19:34:15 +01:00
rdb
af15797a25
Many, many performance optimizations and enhancements
2015-01-07 19:30:01 +01:00
rdb
ecf627b315
Fix a bug substituting some enums
...
(Still a bug: some enums in templated classes don't get instanced properly)
2015-01-05 17:04:38 +01:00
rdb
e2cdade9d2
Merge branch 'master' into interrogate-overhaul
2015-01-04 20:39:58 +01:00
rdb
936fa653b0
Remove unneeded HAVE_ flags from dtool_config.h generation
2015-01-04 20:34:59 +01:00
rdb
5e905d4463
Fix various parser bugs, improve error reporting
...
(to show the included file chain -vv is now needed)
2015-01-04 20:30:24 +01:00
rdb
34761a0b9b
Merge branch 'master' into interrogate-overhaul
...
Conflicts:
dtool/src/cppparser/cppBison.yxx
2015-01-03 16:52:44 +01:00
rdb
e8905b840c
Use C++11 move semantics to dramatically improve PointerTo performance
2015-01-02 15:25:58 +01:00
rdb
368e1ca644
Support noexcept and rvalue references in C++ parser
2015-01-02 14:57:33 +01:00
rdb
202008c470
Support digraphs and alternate operator names in CPPParser
2015-01-02 14:55:06 +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
624b3dad14
Delete DirectX 8 support
2014-12-30 02:00:43 +01:00
rdb
be1eb1d812
More minor linux packaging fixes
2014-12-29 15:16:33 +01:00
rdb
f189290dfe
Support for automated build bot scripts, add PandaSystem::get_git_commit()
2014-12-22 20:27:37 +01:00
rdb
5aaaf72851
Fix issue with Eigen when matrix determinant is nearly 0
...
also fix error message for singular matrix
2014-12-10 16:32:04 +01:00
rdb
15b88283b2
Merge branch 'master' of github.com:panda3d/panda3d
2014-12-03 21:53:58 +01:00
rdb
b3fd8b94ad
Interrogate should be able to parse any constexpr as enum value, including one that references a different enum value
2014-12-03 21:51:58 +01:00
David Rose
ad449848c2
extend .gitignores for more ppremake files
2014-12-02 09:48:04 -08:00
rdb
4c10c9ec1f
Oops, fix GCC
2014-11-26 21:14:35 +00:00
rdb
861234c349
Bunch of minor compile fixes and changes
2014-11-26 13:33:10 +00:00
rdb
3490be94b7
Fix deadlock issues with type registry
2014-11-21 16:51:36 +00:00
rdb
c3bf91d608
GCC atomics also work in clang 3.0+
2014-10-21 20:49:58 +00:00
rdb
a65b477734
Commit patches by cfsworks:
...
cxx: Fix missing includes masked by composite builds.
misc: Fix typos in comments.
config: Fix missing config forward-declarations.
direct: Adjust Python imports to panda3d.* instead of pandac.*.
display: Split graphicsWindow out into an extension.
framework: Use if/elif/elif/endif instead of ifdef/elif/elif/endif.
ode: Remove erroneous INLINE declarations.
interval: Fix missing import.
2014-10-19 22:41:47 +00:00
rdb
f3094043df
Fix left shift in Python (LP bug #1289475 )
2014-10-19 15:50:54 +00:00
rdb
31a71c990d
Fix issues with OS X 10.9 compilation, fix issues uncovered by clang
2014-10-12 18:45:37 +00:00
rdb
3ed7ae0bd9
Oops; fix memory leak
2014-10-10 13:54:53 +00:00
rdb
902bedc314
Fix Python 3 crash on Windows, and fix some Python 3-related compile errors
2014-10-10 13:45:05 +00:00
rdb
fbc3564bf9
More work on Android port
2014-10-08 15:09:25 +00:00
rdb
0a84dd9ca3
Android fixes
2014-10-06 17:44:58 +00:00
rdb
24386cdc1e
Use a table to make InternalName::make more efficient for Python interned strings
2014-10-02 18:28:06 +00:00
rdb
778b4390f4
Temporary fix for Python 3 compilation error
2014-09-21 13:37:32 +00:00
rdb
db7a6561f2
When finding comment for an enum, don't accidentally pick up a same-line comment of an enum value on the preceding line
2014-09-21 13:22:52 +00:00
rdb
d9c529a5d0
Update prebuild cppBison files
2014-09-20 11:54:04 +00:00
rdb
a6229f1fac
Support for comments in enums. Improve comment handling in C++ parser. Improve doxygen reference. Update interrogate interface. (Addendum to interrogatedb v2.3.)
2014-09-19 23:34:11 +00:00
rdb
c178aba639
Add property support to interrogate (using MAKE_PROPERTY or using published members)
2014-09-19 15:23:52 +00:00
rdb
8afd8b1f57
interrogatedb v2.3: elements can have comments
2014-09-19 15:18:08 +00:00
rdb
30d8cc29b3
Rewrite handling of stringify and token-paste operators to work better. Add support for variadic macros.
2014-09-19 15:14:11 +00:00
rdb
87910799b6
Split off epvector.h into its own file in an attempt to cut down compilation time
2014-09-14 22:04:36 +00:00
rdb
5437a3e5a9
Allow const variables with initializers to be used in expressions (like enum definitions). Also fix compiler warning.
2014-09-14 22:02:16 +00:00
rdb
a044561be5
*Always* check for exceptions in C++ methods, otherwise we miss important exceptions thrown in Python code called by C++ methods (like SystemExit!)
2014-08-26 21:01:12 +00:00
rdb
e468b293d1
Fix a longstanding memory leak in certain interrogate exception handlers.
...
Raise MemoryError when constructor returns NULL.
Properly check argument count of constructors that take no arguments.
2014-08-26 17:17:37 +00:00
rdb
ab5e4f496b
Fix cmath includes on GNU
2014-08-21 17:00:57 +00:00
rdb
4db966f431
GNU needs #include <limits> for numeric_limits
2014-08-21 16:54:44 +00:00
rdb
a7f2f50236
Move string_utils.* to from putil to dtoolutil
2014-08-20 19:33:55 +00:00
rdb
515f93a0b8
Better handling of nan/infinity. Previously, these weren't working on Windows in config strings.
2014-08-20 19:32:11 +00:00
rdb
24d705b031
The "null" ButtonHandle and TypeHandle now evaluate to false
2014-07-29 11:15:12 +00:00
rdb
3e974abf5d
Fix silly bug with longs
2014-07-23 17:41:22 +00:00
rdb
f02662d4e0
Improve interrogate code readability, use METH_STATIC for static methods, support anonymous enums
2014-07-22 20:06:59 +00:00
rdb
e98618b105
Only use constexpr when the compiler conforms to C++11
2014-07-21 15:41:31 +00:00
rdb
c257ce624e
Interrogate overhaul that dramatically increases performance for the simpler methods
2014-07-18 13:54:38 +00:00
rdb
dba717fe83
GCC 4.7 enables constexpr, not 4.6
2014-07-17 16:18:04 +00:00
rdb
1be0fb5169
Add atomic adjust impl that uses GCC intrinsics. Also, make use of "constexpr" when available.
2014-07-17 13:11:06 +00:00
rdb
cba254d0bc
Add wstring type handle. Also add some useful MAKE_SEQs.
2014-06-26 20:06:04 +00:00
rdb
c33ef307d6
Delete MesaGL renderer, it seems not to be used any more
2014-06-18 14:59:11 +00:00
rdb
5dae464394
Add integer vectors. Also add __pow__ operator to vectors.
2014-06-11 18:01:50 +00:00
rdb
634190281d
Support __pow__ in interrogate
2014-06-11 17:17:45 +00:00
rdb
5b967671fa
Fix Python 3 build issue with iterator extensions
2014-05-23 13:42:26 +00:00
rdb
d5d5de1d7e
Make iterators work with interrogate by mapping None to NULL for the iternext method. Not the best solution, but is easy and fits most use cases.
2014-03-27 15:15:58 +00:00
rdb
31a192f27b
Fix interrogate understanding of PY_VERSION_HEX
2014-03-09 11:43:08 +00:00
rdb
ae4bddd7f7
Fix Python 3 compile issue
2014-03-09 01:00:23 +00:00
rdb
c213712600
fix windows build when the module is in different dll than the library defs
2014-02-20 18:38:35 +00:00
rdb
5f2c0a6e04
Big commit aiding in separation of Python bindings:
...
* Most extension functions have been moved to C++.
* In makepanda, Python bindings are compiled into panda3d/<module>.pyd.
2014-02-20 13:33:26 +00:00
rdb
3070f18c24
Add assertion in a case where I've seen an occasional crash
2014-02-19 08:38:57 +00:00
rdb
a10bbe9c9e
One more pystub symbol for Python 3 that's used in direct
2013-12-23 21:06:20 +00:00
rdb
4944d7cd7b
use compare_to and get_class_type instead of compareTo and getClassType
2013-12-18 10:24:00 +00:00