Commit Graph

77 Commits (74f80fea4fd23b4b54ccf7c488810cc2d2f4e8f5)

Author SHA1 Message Date
Duy-Nguyen Ta 74f80fea4f [refactor] more understandable function names
Clearing confusions between pxd and pyx classes and objects!
2016-11-22 12:13:33 -05:00
Duy-Nguyen Ta 52a85f23f8 fix bugs on returned values 2016-11-21 17:14:30 -05:00
Duy-Nguyen Ta fbcb9041f2 big refactoring, support method/static method overloading 2016-11-20 09:24:43 -05:00
Duy-Nguyen Ta dc185a6d30 support python print for classes with print_ function 2016-11-16 17:37:33 -05:00
Duy-Nguyen Ta 814abcb67c print_() insteads of _print() (easier to type) 2016-09-19 12:37:03 -04:00
Duy-Nguyen Ta 547606e6c2 correct cython wrapper module name in pyx import 2016-09-14 07:45:26 -04:00
Duy-Nguyen Ta 2433cbd8e8 Remove copy constructor assumption. Manually add copy constructors. Remove dependency on default constructor (some like Optimizers and Marginals don't have the default constructor). Remove cyCreateFromValue. Ignore variable name when checking overload similarity. 2016-09-13 17:11:23 -04:00
Duy-Nguyen Ta 1b04c6713b handle "This". Wrap all geometry 2016-09-11 18:14:19 -04:00
Duy-Nguyen Ta fabfac65f4 unify and simplify function call in Method and StaticMethod 2016-09-11 17:14:06 -04:00
Duy-Nguyen Ta 63a5d1e15a wrap pair. Improve return. 2016-09-11 16:40:09 -04:00
Duy-Nguyen Ta 948e6262db first version ever compiled.
... Not without some changes:
- add traits<size_t> in Key.h
- add these to JacobianFactor:
    explicit JacobianFactor(const Eigen::Map<Vector>& b_in);
    Vector py_getb() { return getb(); }
    Matrix py_getA() { return getA(); }
---------
... Remaining corner cases:
 ☐ Eigency: Map[] to Block
 ☐ Eigency: ambiguous call: A(const T&) A(const Vector& v) and Eigency A(Map[Vector]& v)
 ☐ Fix return properly
   ☐ handle pair
 ☐ Fix method template of Vector/Matrix: template argument is [Vector] while arugment is Map[Vector]
 ☐ Constructor: generate default constructor? (hack: if it's serializable?)
 ☐ Constructor: ambiguous construct from Vector/Matrix
 ☐ Key and size_t: traits<size_t> doesn't exist
 ☐ [Nice to have] Auto delete duplicate methods in derived class
2016-09-10 19:50:12 -04:00
Duy-Nguyen Ta 10f510119a pyx class methods with arguments/return type casting 2016-09-09 18:37:48 -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
dellaert 72fe66d468 Removed headers 2016-05-22 14:22:36 -07: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 14ef786dfe Removing empty in favor of boost::optional 2014-11-30 10:38:24 +01:00
dellaert b0fa5ce684 Cut out unused arguments 2014-11-29 19:34:46 +01:00
dellaert 6c0439f6ea Method and StaticMethod now inherit from MethodBase - much better 2014-11-29 15:31:29 +01:00
dellaert be00e1c348 Allow Vector and Matrix in list of template values 2014-11-29 13:44:49 +01:00
dellaert 7a4748d3dc Simplified method/function hierarchy drastically, and renamed bottom addOverload to initializeOrCheck to reflect what it does. Also, gratuitous re-ordering of addOverload arguments. 2014-11-14 16:44:08 +01:00
dellaert e07da1c82d Added matlabName, and made data members private 2014-11-13 22:43: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 a5e0adb7e6 Made methods and global functions derive from Function 2014-11-13 12:52:41 +01:00
dellaert 341ad9f288 gtsam.h with templated Values::at now compiles ! 2014-11-13 01:26:06 +01:00
dellaert 5ca71a2eb9 Fixed exception bug 2014-11-12 23:54:37 +01:00
dellaert 1ea0225030 Big refactor because methods now private member of Class 2014-11-12 23:23:07 +01:00
dellaert ad9f3b334c test addOverload 2014-11-12 22:06:53 +01:00
dellaert 7d4f5a4820 Make explicit whether wrapper or proxy is written to... 2014-11-12 20:51:47 +01:00
dellaert 0a23529032 Everything compiles 2014-11-12 14:37:08 +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 9a102e8c59 Handle special case of single overload with all numeric arguments 2014-05-25 15:21:49 -04:00
dellaert 52cd200718 ReturnValue now emits, eliminated some copy/paste. Also removed unused verbose field/argument in ReturnValue 2014-05-25 14:53:32 -04:00
dellaert 406419317f eliminated more copy/paste mess between Method and StaticMethod 2014-05-25 14:35:07 -04:00
dellaert 61baef3be0 Don't emit overloads unless there are any 2014-05-25 13:37:44 -04:00
dellaert 95b85e8494 Now using ArgumentList::emit_prototype everywhere, for non copy/paste code 2014-05-25 13:22:10 -04:00
dellaert 02c3fe9516 Standard BORG formatting 2014-05-25 12:06:34 -04:00
Alex Cunningham d1b9185918 Trying more variations. Fixed small valgrind issue that didn't actually have an effect 2012-11-27 19:03:19 +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 84a806bf39 Final fixes made for wrap comments 2012-08-29 20:27:10 +00:00
Andrew Melim d0a1e662a7 Wrap comments are now EVEN better 2012-08-28 21:44:45 +00:00
Andrew Melim a6545b4e01 Fixed wrap tests and changed comments 2012-08-27 17:54:25 +00:00
Andrew Melim c3e615b2df Added doxygen info to wrap commenting system 2012-08-27 15:30:47 +00:00
Andrew Melim 6da48bc580 Even more comment improvements for wrap 2012-08-27 15:19:55 +00:00
Alex Cunningham 656f573c0a Removed from wrap the use of "using namespace xxx" statements - wasn't fully supported before, and now we have real namespace support 2012-07-23 18:24:43 +00:00
Richard Roberts 8dbffd4629 Wrap generates Matlab namespaces, so now 'import gtsam.*' allows class names like Values, NonlinearFactor, to be used. Without import, syntax is gtsam.Values, etc. 2012-07-18 15:47:06 +00:00
Richard Roberts ce12f3d255 Code cleanup and comments 2012-07-12 22:28:28 +00:00
Richard Roberts e915e666b5 Can return abstract base classes from functions in matlab wrapper, i.e. Values::at 2012-07-09 20:19:37 +00:00
Richard Roberts 3c27daae18 wrap_mods_inheritance branch: in progress with inheritance in matlab wrapper 2012-07-08 12:27:39 +00:00
Richard Roberts f774a380ec Implemented method overloading in matlab wrapper, made static functions static in matlab classes 2012-07-05 14:05:00 +00:00