Skip to content

Commit d2d28d2

Browse files
authored
Merge pull request #488 from Affonso-Gui/roseus_resume
Add roseus_resume support
2 parents 7e03b4d + d977f19 commit d2d28d2

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

pr2eus/robot-interface.l

+16
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,12 @@
1111
(require :speak "package://pr2eus/speak.l")
1212
(require :actionlib-commstate "package://roseus/euslisp/actionlib-commstate.l")
1313

14+
;; ROSEUS_RESUME
15+
(defvar *enable-roseus-resume*
16+
#+:condition (ros::rospack-find "roseus_resume"))
17+
;; make dummy package to avoid symbol search error
18+
(unless (find-package "ROSEUS_RESUME") (make-package "ROSEUS_RESUME"))
19+
1420
(defun shortest-angle (d0 d1)
1521
(atan2 (sin (- d0 d1)) (cos (- d0 d1))))
1622

@@ -264,6 +270,9 @@
264270
(pushnew `(lambda () (send ,self :robot-interface-simulation-callback)) *timer-job*)
265271
(warning-message 3 "current *timer-job* is ~A~%" *timer-job*)
266272
))
273+
;;
274+
(when *enable-roseus-resume*
275+
(roseus_resume::install-interruption-handler self))
267276
self)
268277
;;
269278
(:add-controller (ctype &key (joint-enable-check) (create-actions))
@@ -2298,4 +2307,11 @@ Return value is a list of interpolatingp for all controllers, so (null (some #'i
22982307
(funcall (eval (read-from-string (format nil "#'~A-init" robot-name))))
22992308
))))
23002309

2310+
;; roseus_resume must be loaded after `robot-interface' definition
2311+
(if *enable-roseus-resume*
2312+
(progn
2313+
(require :roseus_resume "package://roseus_resume/euslisp/interruption-handler.l")
2314+
(warning-message 2 ";; roseus_resume is enabled.~%"))
2315+
(warning-message 3 ";; roseus_resume is disabled.~%"))
2316+
23012317
(provide :robot-interface "robot-interface.l")

0 commit comments

Comments
 (0)