chrisbeall
f9de023caf
Only add custom all.tests target when GTSAM_BUILD_TESTS is true
2016-10-06 14:25:40 -07:00
Jing Dong
d7d35876f1
jacobians for logmap and expmap
2016-10-03 19:11:44 -04:00
Yao Chen
60f556e513
Replaced graph.push_back with graph.emplace_shared if needed.
2016-10-01 11:45:44 -04:00
Yao Chen
3c1a0a8801
Replaced graph.add with graph.emplace_shared if needed.
2016-10-01 11:41:37 -04:00
Yao Chen
249d6b0b1b
Replaced graph.push_back with graph.emplace_shared if needed.
2016-10-01 11:17:41 -04:00
Chris Beall
557f08d72b
Merged in fix/DoglegTiming (pull request #279 )
...
Fix dogleg compile issue in CMake Timing mode
2016-09-26 22:18:10 -07:00
Jing Dong
a7fbce3e4c
fix dogleg compile issue in CMake Timing mode
2016-09-26 17:01:41 -04:00
Chris Beall
9f9d7b4a09
Merged in crownequipment/gtsam/fix/removeBoostRegex (pull request #278 )
...
Removed the boost::regex include (not used) from the matlab wrapper & removed any linking to boost::regex
2016-09-20 07:59:37 -07:00
Duy-Nguyen Ta
5311bc1b55
check in TODO list
2016-09-19 12:46:57 -04:00
Duy-Nguyen Ta
bfb58143f5
Vector in template param: works! Also fix tests for recent changes...
2016-09-19 12:39:41 -04:00
Duy-Nguyen Ta
f5691804ed
Use class name as ctor for static construction calls
...
Longer, but more conventional
2016-09-19 12:39:04 -04:00
Duy-Nguyen Ta
814abcb67c
print_() insteads of _print() (easier to type)
2016-09-19 12:37:03 -04:00
Chris Beall
ee0e1c391d
Merged in crownequipment/gtsam/fix/testSpirit (pull request #275 )
...
boost::spirit assign_a fixes to use non-literials
2016-09-18 14:06:18 -07:00
Duy-Nguyen Ta
a294c2ab11
simplify python constructor call
2016-09-16 11:43:25 -04:00
Duy-Nguyen Ta
83d3f21fd8
ignore generated files
2016-09-16 11:43:06 -04:00
Duy-Nguyen Ta
d40c0ba491
add setup scripts, fix tests
2016-09-16 11:42:01 -04:00
Duy-Nguyen Ta
3478b744e6
add setup script
2016-09-14 07:47:52 -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
435870ebf0
remove extra Xd of Eigen types in Argument and ReturnType
2016-09-14 07:44:38 -04:00
Duy-Nguyen Ta
892b9264a4
correct Eigency name for Eigen type
2016-09-13 21:20:08 -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
0c149b0cca
add python version for getA/getb as cython can't convert constABlock/BVector to Matrix/Vector automatically.
2016-09-13 16:21:51 -04:00
Duy-Nguyen Ta
450a652bcf
pxd hack: always add copy constructor by default
2016-09-12 18:47:04 -04:00
Duy-Nguyen Ta
3115f9b671
enable all Key containers
2016-09-12 18:46:41 -04:00
Duy-Nguyen Ta
53dbe25c50
Cython pxd: putting template instantiations at the correct place right after a template class
2016-09-12 18:36:45 -04:00
Duy-Nguyen Ta
6044bffd8a
handle Key by adding noninstantiating normal typedef rule. Fix copy constructor in template classes: using This.
2016-09-12 18:17:47 -04: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
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
b91a7d368d
fix Vector/Matrix and Map[Vector/Matrix] ambiguity.
...
That also fixes the problem of function templated on Matrix/Vector
2016-09-11 08:24:45 -04:00
Duy-Nguyen Ta
cf51c85391
fix testWrap: revert experimental changes
2016-09-10 22:18:53 -04:00
Duy-Nguyen Ta
081d642365
Merge branch 'develop' into feature/cython_wrapper
2016-09-10 20:35:48 -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
3352aed2f7
call new function name
2016-09-10 19:45:50 -04:00
Duy-Nguyen Ta
2496de85a9
check if default constructor exists. Autogenerate copy constructor by default
2016-09-10 19:44:53 -04:00
Duy-Nguyen Ta
8944f02401
add headers, small refactor, test FastContainers
2016-09-09 22:28:15 -04:00
Duy-Nguyen Ta
d719b9b7ae
ctypedefs for all instantiated classes
2016-09-09 21:50:55 -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
56c0d2a65e
pyx wrapper for static methods
2016-09-09 16:39:47 -04:00
Duy-Nguyen Ta
d65d87072b
use __Create__ as name for "constructors" instead of the object name
...
so we call : Class.__Create__(...) to create a python object, instead of Class.Class(...) which seems duplicated and complicated if Class is long, e.g. "mEstimator_noiseModel_GemanMcClure"
2016-09-09 16:39:12 -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
f137ae1d9c
test wrapping JacobianFactor
2016-09-09 11:59:28 -04:00
Yao Chen
95c75b8bae
Updated functions
2016-09-09 08:33: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
b9880d4257
emit template class to Cython pxd with test
...
Cython allows template class.
2016-09-09 07:28:13 -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