v4hn
7cd82d5c04
resolve clang warnings & suggestions
2020-04-01 15:05:20 +02:00
v4hn
8578a64ac0
correct sign for StageCallback type
...
backward compatible, the function type implicitly converts from previous int definitions.
2020-04-01 15:05:20 +02:00
v4hn
cc86dd8a74
rename Task::erase -> eraseTaskCallback
...
`erase` is too general for a container class,
when it's not actually about erasing children or the container itself.
2020-04-01 15:05:20 +02:00
v4hn
c046ec605d
streamline add/insert interfaces for Task/Container
...
`add` falls back to `insert` for both structures,
but `add` throws exceptions and does not provide a return value.
`insert` provides standard STL container access.
2020-04-01 15:05:20 +02:00
v4hn
df8a783239
enforce one-parent policy in StagePrivate
...
So new containers cannot get this wrong by accident.
2020-04-01 15:05:20 +02:00
v4hn
8f56d4ae79
avoid copy from const id reference
...
This mustn't compile as users got confused about it:
```
Task t;
t.id() = "foobar";
```
2020-03-05 12:08:59 +01:00
Robert Haschke
9ee653453d
Container: abort traversal with false return value of processor
...
So far, returning false from the processor function, just skipped further traversing the current child (depth-wise).
Now, traversal is completely aborted, even not traversing the remaining siblings of the current child.
Having a single boolean return value, we cannot distinguish both cases.
We need the new behaviour for 8061945c15bea22e8f8899c987bc28e3542885aa.
2020-03-03 17:57:06 +01:00
Markus Vieth
534d520a04
Add return value to Task::execute ( #136 )
2020-02-20 11:31:51 +01:00
Robert Haschke
463486257b
Merge #120 : Add computation timing
2020-02-06 16:18:49 +01:00
Jafar Abdi
89fea00b33
Stage::runCompute() to measure computation time
2020-02-06 16:17:04 +01:00
Henning Kayser
c1f6ca8e84
Expose SolutionCallback API in Task ( #121 )
2020-01-11 08:33:57 +01:00
v4hn
233d63aa7a
avoid deprecation warnings of MoveIt master branch
...
Use new methods
- moveit::core::isEmpty
- moveit::core::CartesianInterpolator::computeCartesianPath
2019-12-13 11:29:02 +01:00
Michael Görner
f7b259259e
Introduce clang-format ( #102 )
...
* fix catkin_lint issues
* introduce clang-format config and apply it
2019-07-18 11:04:35 +02:00
Robert Haschke
95455c2a26
fix Task::operator=(Task&&)
...
To move a task instance to another one, it's not sufficient to swap all task members,
but we also need to adapt all back pointers, i.e. me_ and parent_ pointers of children,
to point to the (swapped) task instances.
2019-06-04 14:20:47 +02:00
Michael Görner
267c214288
Overload setGoal to accept map of joint values as argument ( #87 )
2019-05-10 14:41:46 +02:00
Robert Haschke
fee73bcd78
Merge branch 'fix-interface-deduction' into master
2019-05-03 01:53:57 +02:00
Robert Haschke
11fb15fd0c
fix clang-tidy warnings
...
- virtual functions used in constructor / destructor
- captured variable in lambda expression not used
- unhandled enums in switch
2019-05-03 01:53:17 +02:00
Robert Haschke
102c80dda1
ParallelContainer: fix interface error reporting
...
need to separately check for start/end interface
2019-05-03 01:06:56 +02:00
Robert Haschke
d9a38f46ab
SerialContainer: fix nested interface resolution
...
We need to distinguish two cases for how the interface of a nested serial container is determined:
1. from its children
2. from its (outer) context
As long as the interface is not fully resolved, requiredInterface() returns UNKNOWN.
After pruning, the first/last child's interface is remembered and reported instead.
2019-05-03 01:06:56 +02:00
Robert Haschke
f402cdec5e
rename [INPUT|OUTPUT]_IF_MASK -> [START|END]_IF_MASK
2019-05-03 01:06:56 +02:00
Robert Haschke
28703af384
improve comments
2019-05-03 01:06:56 +02:00
Robert Haschke
ea75070155
cherry-pick changes from boost-python branch
...
stages: default arguments for constructors
properties: make iterator public
2019-05-02 14:55:34 +02:00
Robert Haschke
d4dfcf962b
FixedCartesianPoses
2019-05-02 14:55:34 +02:00
Robert Haschke
cef6eb64bb
ContainerBase::remove(Stage* child)
2019-05-02 14:55:34 +02:00
Robert Haschke
0fe18799d9
GeneratePlacePose
2019-05-02 14:55:34 +02:00
Robert Haschke
6de1c8dbe5
ContainerBase::findChild()
2019-05-02 14:55:34 +02:00
Robert Haschke
39427f89bf
Merge branches 'fix-interface-deduction' ( #84 ), 'compute-ik-default-timeout' ( #80 ),
...
'fix-visualization' (#76 ), and master-improvements (#81 )
2019-03-11 14:09:03 +01:00
Robert Haschke
905b6a3b0c
move validateConnectivity() from ContainerBase to StagePrivate
...
... to allow specific stage types (PropagatingEitherWay) implementing their own validation
No need for a public interface.
2019-03-11 13:54:54 +01:00
Robert Haschke
f831fe5483
fix comments + typos
2019-03-11 13:54:54 +01:00
Robert Haschke
1e953db649
non-const Property::value()
2019-03-10 17:55:46 +01:00
Robert Haschke
c72a6cddac
ComputeIK: auto-configure default timeout from JMG's default
...
TODO: actually set the default value but not the current value!
2019-02-21 00:53:26 +01:00
Robert Haschke
2da9e0d722
rework solution msgs
...
- to allow solution wrappers (WrappedSolution, SolutionSequence)
to transmit their comment and markers as well
- introduced new SolutionInfo.msg,
which is the info common to solution wrappers and actual SubTrajectories
2019-02-12 13:57:12 +01:00
Robert Haschke
527ec8edaa
correctly sort upstream_solutions_ in ComputeIK and GeneratePose
...
Reworked cost_queue to correctly sort pointer-like types.
Added unittests for new ValueOrPointeeLess<T> less operator, ordered<T>, and rviz cost ordering.
2019-02-12 03:05:36 +01:00
v4hn
8392ed5ad3
generate IK solutions incrementally
...
This is not a good approach.
The same can be achieved by generating targets incrementally.
The better approach, to generate IK solutions incrementally,
has to maintain previous solutions for each target.
2019-02-10 08:17:34 +01:00
Robert Haschke
1e0a9401e7
Merge PR #72 : rviz property visualization
2019-02-10 06:25:25 +01:00
Robert Haschke
a1c81f1236
YAML property serialization
...
- switch from ROS serialization/deserialization to YAML
- no native C++ deserialization for ROS msg types available
- drop Propert::print()
2019-02-10 06:21:51 +01:00
Robert Haschke
4ca794cb86
unify property handling in LocalTaskModel and RemoteTaskModel
2019-02-10 06:21:51 +01:00
Robert Haschke
a1f7c5d1c6
improve error msg for mismatching container/child interfaces
2019-02-06 10:29:10 +01:00
Robert Haschke
81cc0aecc6
Property::type_index -> boost::typeindex::type_info
...
avoid decl expressions, explicit public typedef
2019-01-17 23:54:35 +01:00
Robert Haschke
062cfe0b60
PropertyTypeRegistry to store serialization/deserialization functions
2019-01-17 23:54:35 +01:00
Robert Haschke
ae75c3aa7f
Eigen::Affine3 -> Eigen::Isometry3
2018-11-28 08:14:44 +01:00
v4hn
3176aff30f
add accessors for marker_ns property
2018-11-09 10:50:40 +01:00
v4hn
ac3b56a160
document timeout() helpers
2018-11-09 10:50:33 +01:00
v4hn
6b4b4ca624
ComputeIK: threshold for new solutions as property
2018-11-09 10:50:14 +01:00
v4hn
b379ba2268
fix broken rvalue-forward & SerialContainer assert
...
Release mode builds previously produced broken solutions with too many entries,
debug build triggered the assert
container.cpp:334: assert(solution.empty())
The standard guarantees std::vector(&&a) leaves a.empty() == true,
so the logic there is fine as long as subsolutions is actually
used for move-construction.
2018-11-09 10:47:51 +01:00
v4hn
a86eca9ada
predicate filter: fix documentation
2018-11-02 15:51:24 +01:00
v4hn
cc90d5f3f2
add PredicateFilter
2018-11-02 11:53:09 +01:00
Robert Haschke
0f31cdee2e
move storeFailures() into public Stage API
2018-11-02 11:36:00 +01:00
Robert Haschke
915151fdd2
modify ps: add convenience functions
2018-11-02 11:21:48 +01:00
v4hn
38cc4c6936
add comment to subtrajectory
2018-10-25 00:12:46 +02:00