Commit f6c550d6 authored by olivier stasse's avatar olivier stasse
Browse files

Merge pull request #31 from francois-keith/master

Update travis, correct windows dependency, close #27
parents 45a5610f 03250da0
[submodule "cmake"]
path = cmake
url = git://github.com/jrl-umi3218/jrl-cmakemodules.git
[submodule ".travis"]
path = .travis
url = git://github.com/jrl-umi3218/jrl-travis
Subproject commit 127d03a2df0f7a3996bfd66a671eb504a9343e2d
branches:
only:
- master
before_install:
- git submodule update --init --recursive
- sudo apt-get update -qq
- sudo apt-get install -qq doxygen doxygen-latex libboost-all-dev libeigen3-dev liblapack-dev libblas-dev gfortran python-dev python-sphinx
- sudo pip install cpp-coveralls --use-mirrors
env:
global:
secure: SnIBG/xLIHX3CSvUbqqsX8xTVqIqQ7fFS6HWO6KZQVBsT6yugTwYHbyhNiU531JejYJ/I3ZrDhXfYH3qFZiYxnH1sifvwV+fnTtMXpPN7qPZwIymkjcmm6gJF51e0C7VOfUbvKFv0ngwj+ul21rgZSMuoEvxPK0WxtE3/ZSfn9c=
language: cpp
compiler:
- clang
- gcc
script: ./.travis/build
language: cpp
notifications:
email:
env:
global:
- secure: "SnIBG/xLIHX3CSvUbqqsX8xTVqIqQ7fFS6HWO6KZQVBsT6yugTwYHbyhNiU531JejYJ/I3ZrDhXfYH3qFZiYxnH1sifvwV+fnTtMXpPN7qPZwIymkjcmm6gJF51e0C7VOfUbvKFv0ngwj+ul21rgZSMuoEvxPK0WxtE3/ZSfn9c="
- APT_DEPENDENCIES="doxygen doxygen-latex libboost-all-dev libeigen3-dev liblapack-dev libblas-dev gfortran python-dev python-sphinx"
- GIT_DEPENDENCIES="jrl-umi3218/jrl-mathtools jrl-umi3218/jrl-mal stack-of-tasks/dynamic-graph stack-of-tasks/dynamic-graph-python"
- DEBSIGN_KEYID=5AE5CD75
notifications:
email:
- hpp-source@laas.fr
after_success:
- coveralls -e _travis/install -e tests
- git config --global user.name "Travis CI"
- git config --global user.email "thomas.moulard+travis@gmail.com"
- git remote set-url origin https://thomas-moulard:${GH_TOKEN}@github.com/stack-of-tasks/sot-core.git
- git fetch origin gh-pages:gh-pages
- cd _travis/build/doc && ../../../cmake/github/update-doxygen-doc.sh
branches:
only:
- master
- debian
matrix:
allow_failures:
- compiler: clang
script: ./.travis/run build
after_success: ./.travis/run after_success
after_failure: ./.travis/run after_failure
before_install: ./.travis/run before_install
#!/bin/sh
set -ev
# Directories.
root_dir=`pwd`
build_dir="$root_dir/_travis/build"
install_dir="$root_dir/_travis/install"
# Shortcuts.
git_clone="git clone --quiet --recursive"
# Create layout.
rm -rf "$build_dir" "$install_dir"
mkdir -p "$build_dir"
mkdir -p "$install_dir"
# Setup environment variables.
export LD_LIBRARY_PATH="$install_dir/lib:$LD_LIBRARY_PATH"
export LD_LIBRARY_PATH="$install_dir/lib/`dpkg-architecture -qDEB_BUILD_MULTIARCH`:$LD_LIBRARY_PATH"
export PKG_CONFIG_PATH="$install_dir/lib/pkgconfig:$PKG_CONFIG_PATH"
export PKG_CONFIG_PATH="$install_dir/lib/`dpkg-architecture -qDEB_BUILD_MULTIARCH`/pkgconfig:$PKG_CONFIG_PATH"
install_dependency()
{
echo "--> Compiling $1"
mkdir -p "$build_dir/$1"
cd "$build_dir"
$git_clone "git://github.com/$1" "$1"
cd "$build_dir/$1"
cmake . -DCMAKE_INSTALL_PREFIX:STRING="$install_dir"
make install
}
# Retrieve jrl-mathtools
install_dependency jrl-umi3218/jrl-mathtools
install_dependency jrl-umi3218/jrl-mal
install_dependency stack-of-tasks/dynamic-graph
install_dependency stack-of-tasks/dynamic-graph-python
# Compile and run tests
cd "$build_dir"
cmake "$root_dir" -DCMAKE_INSTALL_PREFIX="$install_dir" \
-DCMAKE_CXX_FLAGS="--coverage" \
-DCMAKE_EXE_LINKER_FLAGS="--coverage" \
-DCMAKE_MODULE_LINKER_FLAGS="--coverage" \
-DCMAKE_INSTALL_PREFIX:STRING="$install_dir"
make
make test
make install
sot-core (1.1.1-5-ge9e11) lucid; urgency=low
* Buildbot using git version
-- stasse <stasse@aist.go.jp> Wed, 04 May 2011 07:18:03 +0900
sot-core (1.1.1) lucid; urgency=low
* Fix shlibs, rules and doc packages for debian package generation.
-- olivier-stasse <olivier.stasse@aist.go.jp> Fri, 22 Apr 2011 05:51:56 +0900
sot-core (1.0.0.99-2) lucid; urgency=low
* Fix build requirement (missing Boost.Filesystem and Boost.System).
-- Thomas Moulard <thomas.moulard@gmail.com> Wed, 29 Sep 2010 15:34:00 +0200
sot-core (1.0.0.99-1) lucid; urgency=low
* Initial work.
-- Thomas Moulard <thomas.moulard@gmail.com> Wed, 29 Sep 2010 15:34:00 +0200
Source: sot-core
Priority: extra
Maintainer: Thomas Moulard <thomas.moulard@gmail.com>
Build-Depends: debhelper (>= 7.0.50~), cmake (>= 2.6),
doxygen (>= 1.6.3),
pkg-config (>= 0.22),
libboost-dev (>= 1.33.1),
libboost-thread-dev (>= 1.40),
libboost-filesystem-dev (>= 1.40),
libboost-system-dev (>= 1.40),
liblapack-dev (>= 1.2),
gfortran (>= 4:4.4.3),
libjrl-mal-dev (>= 1.9.2),
libdynamic-graph-dev (>= 1.2.1)
Standards-Version: 3.8.4
#Vcs-Git:
#Vcs-browser:
Section: libs
#Homepage:
Package: libsot-core-dev
Section: libdevel
Architecture: any
Depends: libboost-dev (>= 1.40), libboost-thread-dev (>= 1.40), libboost-filesystem-dev (>= 1.40), libboost-system-dev (>= 1.40), liblapack-dev (>= 1.2), libjrl-mal-dev (>= 1.9.2), libdynamic-graph-dev (>= 1.2.1), libsot-core1.1.1 (= ${binary:Version}), ${misc:Depends}
Suggests: libsot-core-doc
Description: the hierarchichal task solver
The stack of tasks provides a hierarchical task solver as a dynamic
graph plug-in. It allows the realization of complex robotics tasks.
.
This package contains development files (headers and pkg-config file).
Package: libsot-core1.1.1
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: the hierarchichal task solver plug-in
The stack of tasks provides a hierarchical task solver as a dynamic
graph plug-in. It allows the realization of complex robotics tasks.
.
This package contains the dynamic graph plug-ins and versioned shared
libraries.
Package: libsot-core-doc
Section: doc
Architecture: all
Depends: ${misc:Depends}
Suggests: libdynamic-graph-doc
Description: documentation for the hierarchichal task solver
The stack of tasks provides a hierarchical task solver as a dynamic
graph plug-in. It allows the realization of complex robotics tasks.
.
This package contains the Doxygen documentation.
Package: libsot-core-dbg
Architecture: any
Section: debug
Priority: extra
Depends: libdg-middleware (= 1.2.1)
Description: debugging symbols for libdg-middleware
This package provides the corba interface to control a dynamic graph.
.
This package contains the debugging symbols for libdg-middleware.
\ No newline at end of file
This work was packaged for Debian by:
Thomas Moulard <thomas.moulard@gmail.com> on Wed, 29 Sep 2010 15:13:00 +0200
It was downloaded from <not yet available>
Upstream Author(s):
Thomas Moulard <thomas.moulard@gmail.com>
Copyright:
Copyright (C) 2010 François Bleibel, Olivier Stasse, JRL, CNRS/AIST.
License:
See `/usr/share/common-licenses/LGPL-3'.
The Debian packaging is:
Copyright (C) 2010 Thomas Moulard <thomas.moulard@gmail.com>
and is licensed under the GPL version 3,
see `/usr/share/common-licenses/GPL-3'.
AUTHORS
NEWS
README.md
opt/openrobots/include/*
opt/openrobots/lib/lib*.so
opt/openrobots/lib/plugin/*.so
opt/openrobots/lib/pkgconfig/*
Document: sot-core
Title: Debian sot-core Manual
Author: Thomas Moulard <thomas.moulard@gmail.com>
Abstract: Doxygen documentation of sot-core.
Section: Programming
Format: HTML
Index: /opt/openrobots/share/doc/sot-core/html/index.html
Files: /opt/openrobots/share/doc/sot-core/html/*.html
opt/openrobots/share/doc/sot-core/*
opt/openrobots/lib/lib*.so.*
opt/openrobots/lib/plugin/*.so.*
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
# Uncomment this to turn on verbose mode.
export DH_VERBOSE=1
export PKG_CONFIG_PATH=/opt/openrobots/lib/pkgconfig:$PKG_CONFIG_PATH
CFLAGS = -O3 -DNDEBUG
CXXFLAGS = -O3 -DNDEBUG
# FIXME: test suite fails for now.
export DEB_BUILD_OPTIONS=nocheck
.PHONY: override_dh_strip
override_dh_strip:
dh_strip --dbg-package=libdg-middleware-dbg
override_dh_auto_configure:
dh_auto_configure -- -DCMAKE_BUILD_TYPE=RELEASE -DGENERATE_DOC=ON -DCMAKE_INSTALL_PREFIX=/opt/openrobots
# FIXME: this is only necessary because some binaries are linked against
# plug-ins.
# Teach dh_shlibdeps where the plug-in are located.
override_dh_shlibdeps:
export LD_LIBRARY_PATH=\
/opt/openrobots/lib/plugin:\
/opt/openrobots/lib/:$(LD_LIBRARY_PATH) \
&& dh_shlibdeps --
%:
dh $@
libsot-core 1.1.1 libsot-core1.1.1 (>=1.1.1)
# Watch control file for uscan
# Rename this file to "watch" and then you can run the "uscan" command
# to check for upstream updates and more.
# See uscan(1) for format
version=3
#http://github.com/laas/hpp-util/downloads /laas/hpp-util/tarball/v(.*)
......@@ -189,7 +189,7 @@ namespace dynamicgraph {
virtual std::ostream & writeGraph(std::ostream & os) const;
/// Return true for children that provide the errordot output signal
virtual bool withErrorDot( void ) const SOT_CORE_DEPRECATED
SOT_CORE_DEPRECATED virtual bool withErrorDot( void ) const
{
return true;
}
......
......@@ -59,40 +59,45 @@ namespace dynamicgraph { namespace sot {
namespace dg = dynamicgraph;
/*! \brief The goal of this entity is to ensure that the maximal torque will not
* be exceeded during a grasping task.
* If the maximal torque is reached, then the current position of the gripper is
kept
*
*/
class SOTGRIPPERCONTROL_EXPORT GripperControl
{
protected:
double offset;
static const double OFFSET_DEFAULT;
//! \brief The multiplication
ml::Vector factor;
public:
GripperControl( void );
//! \brief Computes the
// if the torque limit is reached, the normalized position is reduced by
// (offset)
void computeIncrement( const ml::Vector& torques,
const ml::Vector& torqueLimits,
const ml::Vector& currentNormPos );
static void computeNormalizedPosition( const ml::Vector& currentPos,
const ml::Vector& upperLim,
const ml::Vector& lowerLim,
ml::Vector& currentNormPos );
static void computeDenormalizedPosition( const ml::Vector& currentNormPos,
const ml::Vector& upperLim,
const ml::Vector& lowerLim,
ml::Vector& currentPos );
const ml::Vector& torqueLimits,
const ml::Vector& currentNormVel );
//! \brief
ml::Vector& computeDesiredPosition( const ml::Vector& currentPos,
const ml::Vector& torques,
const ml::Vector& upperLim,
const ml::Vector& lowerLim,
const ml::Vector& torqueLimits,
ml::Vector& desPos );
const ml::Vector& desiredPos,
const ml::Vector& torques,
const ml::Vector& torqueLimits,
ml::Vector& referencePos );
/*! \brief select only some of the values of the vector fullsize,
* based on the Flags vector.
*/
static ml::Vector& selector( const ml::Vector& fullsize,
const Flags& selec,
ml::Vector& desPos );
const Flags& selec,
ml::Vector& desPos );
};
/* --------------------------------------------------------------------- */
......@@ -119,8 +124,7 @@ class SOTGRIPPERCONTROL_EXPORT GripperControlPlugin
/* --- INPUTS --- */
dg::SignalPtr<ml::Vector,int> positionSIN;
dg::SignalPtr<ml::Vector,int> upperLimitSIN;
dg::SignalPtr<ml::Vector,int> lowerLimitSIN;
dg::SignalPtr<ml::Vector,int> positionDesSIN;
dg::SignalPtr<ml::Vector,int> torqueSIN;
dg::SignalPtr<ml::Vector,int> torqueLimitSIN;
dg::SignalPtr<Flags,int> selectionSIN;
......@@ -128,10 +132,6 @@ class SOTGRIPPERCONTROL_EXPORT GripperControlPlugin
/* --- INTERMEDIARY --- */
dg::SignalPtr<ml::Vector,int> positionFullSizeSIN;
dg::SignalTimeDependent<ml::Vector,int> positionReduceSOUT;
dg::SignalPtr<ml::Vector,int> upperLimitFullSizeSIN;
dg::SignalTimeDependent<ml::Vector,int> upperLimitReduceSOUT;
dg::SignalPtr<ml::Vector,int> lowerLimitFullSizeSIN;
dg::SignalTimeDependent<ml::Vector,int> lowerLimitReduceSOUT;
dg::SignalPtr<ml::Vector,int> torqueFullSizeSIN;
dg::SignalTimeDependent<ml::Vector,int> torqueReduceSOUT;
dg::SignalPtr<ml::Vector,int> torqueLimitFullSizeSIN;
......
......@@ -37,7 +37,7 @@ namespace ml= maal::boost;
// API
#if defined (WIN32)
# if defined (sot_joint_trajectory_entity_EXPORTS)
# if defined (joint_trajectory_entity_EXPORTS)
# define SOTJOINT_TRAJECTORY_ENTITY_EXPORT __declspec(dllexport)
# else
# define SOTJOINT_TRAJECTORY_ENTITY_EXPORT __declspec(dllimport)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment