Commit Graph

1170 Commits

Author SHA1 Message Date
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 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
rdb f29c4681e1 Fix broken Python 3 support. 2013-12-17 17:42:16 +00:00
rdb 634c3c5a0a Stubs for Python 3 functions 2013-12-17 15:03:30 +00:00
rdb 5b1ea47fee add F_operator flag 2013-11-18 18:37:27 +00:00
rdb 52e4acc0ce fix a crash with the python-obj, python and c interface makers 2013-11-08 10:30:27 +00:00
rdb c3e862a842 Add is_double and is_short 2013-11-08 10:25:45 +00:00
rdb 7926a5fa7b backward compatibility with Python 2.7 2013-10-27 18:51:20 +00:00
rdb 0d656a6848 fix typo. thanks to heek_ 2013-09-19 08:04:15 +00:00
rdb b7b9adfd35 compile fixes 2013-09-18 23:35:15 +00:00
rdb d2720d4365 fix line endings 2013-09-17 15:23:14 +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
rdb 8fff339477 A lot of code cleanup 2013-09-01 15:05:43 +00:00
rdb c0d78d57d4 Can we just use streamoff instead of ssize_t? 2013-08-26 15:45:14 +00:00
rdb 461fdfdddc fix compile error on MSVC, where ssize_t doesn't exist (but SSIZE_T does) 2013-08-26 14:38:55 +00:00
rdb 41d851db86 for some reason ppremake needs these files to be here 2013-08-25 17:30:29 +00:00
rdb d58924c280 add OculusVR and ogg/vorbis headers in anticipation of their support 2013-08-25 17:18:02 +00:00
rdb abc5c381be fix interrogate compile error when a function takes a non-const char pointer 2013-08-24 19:26:06 +00:00
David Rose 93afeb40f2 By interrogate conventions, char * means a string, while unsigned char * means a data buffer. 2013-08-23 22:26:17 +00:00
rdb 266890c86a Add version of extract_bytes that extracts into character buffer 2013-08-23 15:03:01 +00:00
rdb 90770727c0 Add LONGLONG 2013-08-21 06:44:41 +00:00
enn0x a343eef6b1 Adding minkowski sum shape. 2013-08-14 23:31:42 +00:00
David Rose dba661253a Fix handling of large (>2GB) files on Windows. Egad, off_t is 32 bits on Windows, even in 64-bit Windows. Ridiculous. 2013-08-01 00:10:20 +00:00
enn0x 1e28f892be Support for driving Bullet soft body joints. 2013-05-22 09:50:55 +00:00
David Rose 67770fa3dc whoops, nan() and nanf() require a parameter 2013-05-04 01:10:42 +00:00