Commit Graph

83 Commits (b8292399d643f2ae445116b81caee7c57c9dcb96)

Author SHA1 Message Date
Duy-Nguyen Ta 1cdc228d6a remove trailing spaces 2019-02-11 10:58:34 -05:00
dellaert c5a0f1a839 Undo unrelated changes 2017-08-06 17:42:20 -07:00
dellaert 2374347e69 Make internal, overloaded static methods cdefs to avoid call code/overhead 2017-08-06 13:25:54 -07:00
dellaert 6068166d2b Moved wrapper class signature to Class.cpp 2017-08-06 12:21:26 -07:00
Duy-Nguyen Ta d9d97c4bc7 Forward declare not only classes but their inheritance
This is needed for wrapping to Cython another project based on gtsam. The current scheme requires information about all parent classes. See updated comments in gtsam.h.
2016-12-19 17:47:30 -05:00
Duy-Nguyen Ta da8a8a3bb0 remove unused argument 2016-12-16 19:24:49 -05:00
Duy-Nguyen Ta f154be176f Major update to generate proper Cython pxd header files which could be included in other projects/modules
All cdef (class, functions, variables) declarations are moved to pxd. Implementations of those cdefs and normal Python def are in pyx.
See: http://cython.readthedocs.io/en/latest/src/userguide/sharing_declarations.html#sharing-extension-types
2016-12-16 00:23:45 -05:00
Duy-Nguyen Ta 9f58d21030 support dynamic cast from all parents/virtual base 2016-11-18 11:00:15 -05:00
Duy-Nguyen Ta 06ab94766c improve inherited method removal
Checking nontemplateMethods_ against parent's methods_ because:
1. Only nontemplateMethods_ are serialized to Cython's pxd, which doesn't like duplicate methods
2. Parent's methods_ list has every methods inherited from grand and grand-grand parents, etc., so we don't need to check higher levels.
Also refactor to reduce nested code
2016-09-12 12:38:04 -04:00
Duy-Nguyen Ta e35f0c3f50 remove inherited functions for Cython classes. Testing HessianFactor with debug info... 2016-09-12 11:05:28 -04:00
Duy-Nguyen Ta d719b9b7ae ctypedefs for all instantiated classes 2016-09-09 21:50:55 -04:00
Duy-Nguyen Ta 1e84da1cfa pyx: add constructors and fixing inheritance 2016-09-09 15:52:44 -04:00
Duy-Nguyen Ta 2d3d6d99f9 standardize function name to emit_cython_[pxd/pyx]. Remove first level namespace from Cython object names.
Examples: gtsam_Point3 --> Point3, gtsam_noiseModel_Base --> noiseModel_Base
2016-09-09 12:01:51 -04:00
Duy-Nguyen Ta 16345e4ba1 revert changes in methods_, handle template methods for Cython pxd in a less instrusive way 2016-09-09 07:49:42 -04:00
Duy-Nguyen Ta 40da298f68 emit methods to pxd, change the way template methods are handled
pxd allows template methods, whereas the current scheme instantiates/expands all template methods and add them to the same methods_ container. The new scheme treats them all separately: nontemplated methods in methods_, template methods in templateMethods_, and template methods after instantiation in expandedTemplateMethods_.
2016-09-09 07:26:11 -04:00
Duy-Nguyen Ta 6e96e095f3 remove unused function 2016-09-09 07:18:58 -04:00
Duy-Nguyen Ta ecde851d8c [inprogress] cython wrapper 2016-09-08 13:33:32 -04:00
Yao Chen d1ea1015a9 Replaced BOOSE_FOREACH with for in wrap folder. Tested the changed code locally: successful. 2016-05-20 21:41:18 -04:00
dellaert 699943d632 Changes to wrap from FixedValues branch/PR. Since unrelated to that PR and useful for OptionalJacobian wrapping in py_wrap, made this a separate PR. 2016-02-07 20:33:48 -08:00
dellaert afebf2087f Small problem w virtual 2014-12-02 14:12:22 +01:00
dellaert b8d7516e93 Successful use of ClassGrammar in Module.cpp 2014-12-02 13:12:42 +01:00
dellaert 0e48e2ff0b Moved to header 2014-12-02 12:41:35 +01:00
dellaert 8eb6393c92 Using TemplateGrammar 2014-12-01 14:35:02 +01:00
dellaert ba51b02cf0 Moving to optionals fixed template dreturn argument!
Merge branch 'qualified' into grammar_wrongtest

Conflicts:
	wrap/Class.cpp
	wrap/Function.h
	wrap/Qualified.h
	wrap/ReturnType.h
	wrap/tests/testWrap.cpp
2014-12-01 09:48:56 +01:00
dellaert 6d916c6b75 Semi-private name/namespaces 2014-11-30 20:20:13 +01:00
dellaert 14ef786dfe Removing empty in favor of boost::optional 2014-11-30 10:38:24 +01:00
dellaert c609666ab9 More informative fail 2014-11-29 16:13:23 +01:00
dellaert 6c24fc2aca Python prototype 2014-11-14 17:47:25 +01:00
dellaert 09e3c7df9f struct Constructor: public ArgumentOverloads 2014-11-13 21:34:59 +01:00
dellaert efd544527f Stream operator for many classes 2014-11-13 21:11:29 +01:00
dellaert fe481dc775 typedef to cope with abundance of strings 2014-11-13 18:58:44 +01:00
dellaert b451e97f6f New TemplateSubstitution object simplifies a lot 2014-11-13 17:28:05 +01:00
dellaert 1ea0225030 Big refactor because methods now private member of Class 2014-11-12 23:23:07 +01:00
dellaert c8ac7f8980 Cleaned up variables 2014-11-12 18:04:38 +01:00
dellaert 77935bd631 Massive edit: new Qualified type groups namespaces with name, eliminates a lot of clutter. 2014-11-12 02:49:23 +01:00
dellaert 8ab83a7cff Simplified expand 2014-11-11 22:55:36 +01:00
dellaert 26cae48338 First successful use of new ArgumentList::emit_prototype method 2014-05-25 13:02:29 -04:00
Alex Cunningham 9f9807ef19 Yet even more rebasing 2013-06-20 17:08:29 +00:00
Alex Cunningham 62d25abb1a More rebasing... 2013-06-20 17:08:28 +00:00
Alex Cunningham f299217cfb Rebasing... 2013-06-20 17:08:28 +00:00
Alex Cunningham 23de91d44d serialization works for graph and PriorFactor. Added second flag for serialization: can add "void serializable()" or "void serialize()" to allow for either just exporting (necessary if no default constructor), or implementing the full serialization functions 2013-06-19 17:50:05 +00:00
Alex Cunningham f1b1a2f7d2 Added export flags, Values now serializes 2013-06-19 17:50:03 +00:00
Alex Cunningham 14c5f205dd basic serialization works 2013-06-19 17:50:00 +00:00
Alex Cunningham 07407ff763 Completed codegen for serialize/deserialize functions 2013-06-19 17:49:59 +00:00
Alex Cunningham 8e73619989 Adding codegen components for serialization - in progress 2013-06-19 17:49:57 +00:00
Alex Cunningham c7576deb15 Added flag for serializable to parser, no codegen yet 2013-06-19 17:49:55 +00:00
Chris Beall 4297d24c96 changed tabs to spaces for consistent indentation in all of GTSAM 2012-10-02 14:40:07 +00:00
Andrew Melim d0a1e662a7 Wrap comments are now EVEN better 2012-08-28 21:44:45 +00:00
Andrew Melim ea70673b36 Added overload constructor comments to matlab files 2012-08-26 15:46:19 +00:00
Richard Roberts 87d1e0a488 Added 'This' keyword in wrap templates to substitute instantiated class 2012-07-23 21:27:36 +00:00