Skip to content

Commit

Permalink
[AttitudeEstimator] [Span] adding fixes, features, bindings and tests (
Browse files Browse the repository at this point in the history
  • Loading branch information
prashanthr05 authored and traversaro committed Mar 26, 2019
1 parent 98a11eb commit d5bac2a
Show file tree
Hide file tree
Showing 147 changed files with 27,643 additions and 20,159 deletions.
4 changes: 2 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ env:
global:
- TRAVIS_CMAKE_GENERATOR="Unix Makefiles"
matrix:
- TRAVIS_BUILD_TYPE="Release" UBUNTU="xenial" VALGRIND_TESTS="ON" COMPILE_BINDINGS="ON" FULL_DEPS="ON"
- TRAVIS_BUILD_TYPE="Debug" UBUNTU="xenial" VALGRIND_TESTS="OFF" COMPILE_BINDINGS="ON" FULL_DEPS="ON"
- TRAVIS_BUILD_TYPE="Release" UBUNTU="xenial" VALGRIND_TESTS="ON" COMPILE_BINDINGS="OFF" FULL_DEPS="ON"
- TRAVIS_BUILD_TYPE="Debug" UBUNTU="xenial" VALGRIND_TESTS="OFF" COMPILE_BINDINGS="OFF" FULL_DEPS="ON"
- TRAVIS_BUILD_TYPE="Release" UBUNTU="bionic" VALGRIND_TESTS="OFF" COMPILE_BINDINGS="ON" FULL_DEPS="ON"
- TRAVIS_BUILD_TYPE="Debug" UBUNTU="bionic" VALGRIND_TESTS="OFF" COMPILE_BINDINGS="ON" FULL_DEPS="ON"

Expand Down
11 changes: 11 additions & 0 deletions bindings/iDynTree.i
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@
#include "iDynTree/Core/TransformSemantics.h"
#include "iDynTree/Core/Transform.h"
#include "iDynTree/Core/TransformDerivative.h"
#include "iDynTree/Core/Span.h"

// Model related data structures
#include "iDynTree/Model/Indices.h"
Expand Down Expand Up @@ -114,6 +115,10 @@
#include "iDynTree/Estimation/SimpleLeggedOdometry.h"
#include "iDynTree/Estimation/BerdyHelper.h"
#include "iDynTree/Estimation/BerdySparseMAPSolver.h"
#include "iDynTree/Estimation/AttitudeEstimator.h"
#include "iDynTree/Estimation/AttitudeMahonyFilter.h"
#include "iDynTree/Estimation/ExtendedKalmanFilter.h"
#include "iDynTree/Estimation/AttitudeQuaternionEKF.h"

// Regressors related data structures
#include "iDynTree/Regressors/DynamicsRegressorParameters.h"
Expand Down Expand Up @@ -256,7 +261,9 @@ TEMPLATE_WRAP_MOTION_FORCE(ForceVector3, WRAP_FORCE, SET_NAME_FOR_WRAPPER,,)
%include "iDynTree/Core/TransformSemantics.h"
%include "iDynTree/Core/Transform.h"
%include "iDynTree/Core/TransformDerivative.h"
%include "iDynTree/Core/Span.h"

%template(DynamicSpan) iDynTree::Span<double, iDynTree::dynamic_extent>;

// Model related data structures
%include "iDynTree/Model/Indices.h"
Expand Down Expand Up @@ -312,6 +319,10 @@ TEMPLATE_WRAP_MOTION_FORCE(ForceVector3, WRAP_FORCE, SET_NAME_FOR_WRAPPER,,)
%include "iDynTree/Estimation/SimpleLeggedOdometry.h"
%include "iDynTree/Estimation/BerdyHelper.h"
%include "iDynTree/Estimation/BerdySparseMAPSolver.h"
%include "iDynTree/Estimation/AttitudeEstimator.h"
%include "iDynTree/Estimation/AttitudeMahonyFilter.h"
%include "iDynTree/Estimation/ExtendedKalmanFilter.h"
%include "iDynTree/Estimation/AttitudeQuaternionEKF.h"

// Regressors related data structures
%include "iDynTree/Regressors/DynamicsRegressorParameters.h"
Expand Down
32 changes: 16 additions & 16 deletions bindings/matlab/autogenerated/+iDynTree/AccelerometerSensor.m
Original file line number Diff line number Diff line change
Expand Up @@ -7,58 +7,58 @@
self.swigPtr = varargin{1}.swigPtr;
end
else
tmp = iDynTreeMEX(1345, varargin{:});
tmp = iDynTreeMEX(1369, varargin{:});
self.swigPtr = tmp.swigPtr;
tmp.SwigClear();
end
end
function delete(self)
if self.swigPtr
iDynTreeMEX(1346, self);
iDynTreeMEX(1370, self);
self.SwigClear();
end
end
function varargout = setName(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1347, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1371, self, varargin{:});
end
function varargout = setLinkSensorTransform(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1348, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1372, self, varargin{:});
end
function varargout = setParentLink(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1349, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1373, self, varargin{:});
end
function varargout = setParentLinkIndex(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1350, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1374, self, varargin{:});
end
function varargout = getName(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1351, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1375, self, varargin{:});
end
function varargout = getSensorType(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1352, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1376, self, varargin{:});
end
function varargout = getParentLink(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1353, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1377, self, varargin{:});
end
function varargout = getParentLinkIndex(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1354, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1378, self, varargin{:});
end
function varargout = getLinkSensorTransform(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1355, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1379, self, varargin{:});
end
function varargout = isValid(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1356, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1380, self, varargin{:});
end
function varargout = clone(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1357, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1381, self, varargin{:});
end
function varargout = updateIndices(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1358, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1382, self, varargin{:});
end
function varargout = updateIndeces(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1359, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1383, self, varargin{:});
end
function varargout = predictMeasurement(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1360, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1384, self, varargin{:});
end
end
methods(Static)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
function varargout = ArticulatedBodyAlgorithm(varargin)
[varargout{1:nargout}] = iDynTreeMEX(1261, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1284, varargin{:});
end
Original file line number Diff line number Diff line change
Expand Up @@ -9,110 +9,110 @@
self.swigPtr = varargin{1}.swigPtr;
end
else
tmp = iDynTreeMEX(1239, varargin{:});
tmp = iDynTreeMEX(1262, varargin{:});
self.swigPtr = tmp.swigPtr;
tmp.SwigClear();
end
end
function varargout = resize(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1240, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1263, self, varargin{:});
end
function varargout = isConsistent(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1241, self, varargin{:});
[varargout{1:nargout}] = iDynTreeMEX(1264, self, varargin{:});
end
function varargout = S(self, varargin)
narginchk(1, 2)
if nargin==1
nargoutchk(0, 1)
varargout{1} = iDynTreeMEX(1242, self);
varargout{1} = iDynTreeMEX(1265, self);
else
nargoutchk(0, 0)
iDynTreeMEX(1243, self, varargin{1});
iDynTreeMEX(1266, self, varargin{1});
end
end
function varargout = U(self, varargin)
narginchk(1, 2)
if nargin==1
nargoutchk(0, 1)
varargout{1} = iDynTreeMEX(1244, self);
varargout{1} = iDynTreeMEX(1267, self);
else
nargoutchk(0, 0)
iDynTreeMEX(1245, self, varargin{1});
iDynTreeMEX(1268, self, varargin{1});
end
end
function varargout = D(self, varargin)
narginchk(1, 2)
if nargin==1
nargoutchk(0, 1)
varargout{1} = iDynTreeMEX(1246, self);
varargout{1} = iDynTreeMEX(1269, self);
else
nargoutchk(0, 0)
iDynTreeMEX(1247, self, varargin{1});
iDynTreeMEX(1270, self, varargin{1});
end
end
function varargout = u(self, varargin)
narginchk(1, 2)
if nargin==1
nargoutchk(0, 1)
varargout{1} = iDynTreeMEX(1248, self);
varargout{1} = iDynTreeMEX(1271, self);
else
nargoutchk(0, 0)
iDynTreeMEX(1249, self, varargin{1});
iDynTreeMEX(1272, self, varargin{1});
end
end
function varargout = linksVel(self, varargin)
narginchk(1, 2)
if nargin==1
nargoutchk(0, 1)
varargout{1} = iDynTreeMEX(1250, self);
varargout{1} = iDynTreeMEX(1273, self);
else
nargoutchk(0, 0)
iDynTreeMEX(1251, self, varargin{1});
iDynTreeMEX(1274, self, varargin{1});
end
end
function varargout = linksBiasAcceleration(self, varargin)
narginchk(1, 2)
if nargin==1
nargoutchk(0, 1)
varargout{1} = iDynTreeMEX(1252, self);
varargout{1} = iDynTreeMEX(1275, self);
else
nargoutchk(0, 0)
iDynTreeMEX(1253, self, varargin{1});
iDynTreeMEX(1276, self, varargin{1});
end
end
function varargout = linksAccelerations(self, varargin)
narginchk(1, 2)
if nargin==1
nargoutchk(0, 1)
varargout{1} = iDynTreeMEX(1254, self);
varargout{1} = iDynTreeMEX(1277, self);
else
nargoutchk(0, 0)
iDynTreeMEX(1255, self, varargin{1});
iDynTreeMEX(1278, self, varargin{1});
end
end
function varargout = linkABIs(self, varargin)
narginchk(1, 2)
if nargin==1
nargoutchk(0, 1)
varargout{1} = iDynTreeMEX(1256, self);
varargout{1} = iDynTreeMEX(1279, self);
else
nargoutchk(0, 0)
iDynTreeMEX(1257, self, varargin{1});
iDynTreeMEX(1280, self, varargin{1});
end
end
function varargout = linksBiasWrench(self, varargin)
narginchk(1, 2)
if nargin==1
nargoutchk(0, 1)
varargout{1} = iDynTreeMEX(1258, self);
varargout{1} = iDynTreeMEX(1281, self);
else
nargoutchk(0, 0)
iDynTreeMEX(1259, self, varargin{1});
iDynTreeMEX(1282, self, varargin{1});
end
end
function delete(self)
if self.swigPtr
iDynTreeMEX(1260, self);
iDynTreeMEX(1283, self);
self.SwigClear();
end
end
Expand Down
56 changes: 56 additions & 0 deletions bindings/matlab/autogenerated/+iDynTree/AttitudeEstimatorState.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
classdef AttitudeEstimatorState < SwigRef
methods
function this = swig_this(self)
this = iDynTreeMEX(3, self);
end
function varargout = m_orientation(self, varargin)
narginchk(1, 2)
if nargin==1
nargoutchk(0, 1)
varargout{1} = iDynTreeMEX(1694, self);
else
nargoutchk(0, 0)
iDynTreeMEX(1695, self, varargin{1});
end
end
function varargout = m_angular_velocity(self, varargin)
narginchk(1, 2)
if nargin==1
nargoutchk(0, 1)
varargout{1} = iDynTreeMEX(1696, self);
else
nargoutchk(0, 0)
iDynTreeMEX(1697, self, varargin{1});
end
end
function varargout = m_gyroscope_bias(self, varargin)
narginchk(1, 2)
if nargin==1
nargoutchk(0, 1)
varargout{1} = iDynTreeMEX(1698, self);
else
nargoutchk(0, 0)
iDynTreeMEX(1699, self, varargin{1});
end
end
function self = AttitudeEstimatorState(varargin)
if nargin==1 && strcmp(class(varargin{1}),'SwigRef')
if ~isnull(varargin{1})
self.swigPtr = varargin{1}.swigPtr;
end
else
tmp = iDynTreeMEX(1700, varargin{:});
self.swigPtr = tmp.swigPtr;
tmp.SwigClear();
end
end
function delete(self)
if self.swigPtr
iDynTreeMEX(1701, self);
self.SwigClear();
end
end
end
methods(Static)
end
end
78 changes: 78 additions & 0 deletions bindings/matlab/autogenerated/+iDynTree/AttitudeMahonyFilter.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
classdef AttitudeMahonyFilter < iDynTree.IAttitudeEstimator
methods
function self = AttitudeMahonyFilter(varargin)
self@iDynTree.IAttitudeEstimator(SwigRef.Null);
if nargin==1 && strcmp(class(varargin{1}),'SwigRef')
if ~isnull(varargin{1})
self.swigPtr = varargin{1}.swigPtr;
end
else
tmp = iDynTreeMEX(1651, varargin{:});
self.swigPtr = tmp.swigPtr;
tmp.SwigClear();
end
end
function varargout = useMagnetoMeterMeasurements(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1652, self, varargin{:});
end
function varargout = setConfidenceForMagnetometerMeasurements(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1653, self, varargin{:});
end
function varargout = setGainkp(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1654, self, varargin{:});
end
function varargout = setGainki(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1655, self, varargin{:});
end
function varargout = setTimeStepInSeconds(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1656, self, varargin{:});
end
function varargout = setGravityDirection(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1657, self, varargin{:});
end
function varargout = setParameters(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1658, self, varargin{:});
end
function varargout = getParameters(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1659, self, varargin{:});
end
function varargout = updateFilterWithMeasurements(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1660, self, varargin{:});
end
function varargout = propagateStates(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1661, self, varargin{:});
end
function varargout = getOrientationEstimateAsRotationMatrix(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1662, self, varargin{:});
end
function varargout = getOrientationEstimateAsQuaternion(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1663, self, varargin{:});
end
function varargout = getOrientationEstimateAsRPY(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1664, self, varargin{:});
end
function varargout = getInternalStateSize(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1665, self, varargin{:});
end
function varargout = getInternalState(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1666, self, varargin{:});
end
function varargout = getDefaultInternalInitialState(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1667, self, varargin{:});
end
function varargout = setInternalState(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1668, self, varargin{:});
end
function varargout = setInternalStateInitialOrientation(self,varargin)
[varargout{1:nargout}] = iDynTreeMEX(1669, self, varargin{:});
end
function delete(self)
if self.swigPtr
iDynTreeMEX(1670, self);
self.SwigClear();
end
end
end
methods(Static)
end
end
Loading

0 comments on commit d5bac2a

Please sign in to comment.