|
From: <ei...@us...> - 2009-08-19 03:27:59
|
Revision: 22237
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=22237&view=rev
Author: eitanme
Date: 2009-08-19 03:27:46 +0000 (Wed, 19 Aug 2009)
Log Message:
-----------
Merging the new version of pluginlib back into trunk
r31894@att (orig r22146): eitanme | 2009-08-18 10:30:37 -0700
Creating a branch to work on pluginlib and get things changed
r31896@att (orig r22148): eitanme | 2009-08-18 10:32:35 -0700
Starting rework... need to commit so that I can move some files around
r31942@att (orig r22182): eitanme | 2009-08-18 16:36:37 -0700
Commit because Scott is moving into the office and I have to shut down my computer
r31978@att (orig r22216): eitanme | 2009-08-18 19:20:47 -0700
Working on changing things over to work with the new pluginlib
r31980@att (orig r22218): eitanme | 2009-08-18 19:24:54 -0700
Converted pluginlib tutorials to new pluginlib code
r31982@att (orig r22220): eitanme | 2009-08-18 19:28:34 -0700
Moving joint qualification controllers over to the new pluginlib model
r31985@att (orig r22223): eitanme | 2009-08-18 19:40:36 -0700
Moving people_aware_nav to new pluginlib interface
r31986@att (orig r22224): eitanme | 2009-08-18 19:43:09 -0700
Moving diagnostic aggregator to the pluginlib interface
r31987@att (orig r22225): eitanme | 2009-08-18 19:43:51 -0700
Moving generic analyzer to the new pluginlib interface
r31988@att (orig r22226): eitanme | 2009-08-18 19:44:21 -0700
Moving carrot planner to the new pluginlib interface
r31992@att (orig r22230): eitanme | 2009-08-18 19:54:15 -0700
Changing REGISTER_CLASS to PLUGINLIB_REGISTER_CLASS
r31996@att (orig r22234): eitanme | 2009-08-18 20:19:30 -0700
Fixing a plugin .xml file
r31998@att (orig r22236): eitanme | 2009-08-18 20:25:05 -0700
Fixing more incorrect tags
Modified Paths:
--------------
pkg/trunk/controllers/qualification_controllers/joint_qualification_controllers/controller_plugins.xml
pkg/trunk/controllers/qualification_controllers/joint_qualification_controllers/manifest.xml
pkg/trunk/controllers/qualification_controllers/joint_qualification_controllers/src/controller_manifest.cpp
pkg/trunk/controllers/robot_mechanism_controllers/controller_plugins.xml
pkg/trunk/controllers/robot_mechanism_controllers/manifest.xml
pkg/trunk/controllers/robot_mechanism_controllers/src/controller_manifest.cpp
pkg/trunk/nav/people_aware_nav/bgp_plugin.xml
pkg/trunk/nav/people_aware_nav/manifest.xml
pkg/trunk/nav/people_aware_nav/src/navfn_constrained.cpp
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/CMakeLists.txt
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/manifest.xml
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/line.cpp
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/square.cpp
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/triangle.cpp
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_user/example.cpp
pkg/trunk/stacks/hardware_test/diagnostic_aggregator/include/diagnostic_aggregator/diagnostic_aggregator.h
pkg/trunk/stacks/hardware_test/diagnostic_aggregator/src/diagnostic_aggregator.cpp
pkg/trunk/stacks/hardware_test/generic_analyzer/generic_analyzer_plugin.xml
pkg/trunk/stacks/hardware_test/generic_analyzer/manifest.xml
pkg/trunk/stacks/hardware_test/generic_analyzer/src/plugin_list.cpp
pkg/trunk/stacks/mechanism/mechanism_control/include/mechanism_control/mechanism_control.h
pkg/trunk/stacks/mechanism/mechanism_control/src/mechanism_control.cpp
pkg/trunk/stacks/navigation/base_local_planner/blp_plugin.xml
pkg/trunk/stacks/navigation/base_local_planner/manifest.xml
pkg/trunk/stacks/navigation/base_local_planner/src/trajectory_planner_ros.cpp
pkg/trunk/stacks/navigation/carrot_planner/bgp_plugin.xml
pkg/trunk/stacks/navigation/carrot_planner/manifest.xml
pkg/trunk/stacks/navigation/carrot_planner/src/carrot_planner.cpp
pkg/trunk/stacks/navigation/move_base/include/move_base/move_base.h
pkg/trunk/stacks/navigation/move_base/include/move_base/move_base_old.h
pkg/trunk/stacks/navigation/move_base/src/move_base.cpp
pkg/trunk/stacks/navigation/move_base/src/move_base_old.cpp
pkg/trunk/stacks/navigation/navfn/bgp_plugin.xml
pkg/trunk/stacks/navigation/navfn/manifest.xml
pkg/trunk/stacks/navigation/navfn/src/navfn_ros.cpp
Added Paths:
-----------
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/pluginlib_tutorial_provider/
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/pluginlib_tutorial_provider/line.h
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/pluginlib_tutorial_provider/square.h
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/pluginlib_tutorial_provider/triangle.h
pkg/trunk/stacks/common/pluginlib/include/pluginlib/class_desc.h
pkg/trunk/stacks/common/pluginlib/include/pluginlib/class_list_macros.h
pkg/trunk/stacks/common/pluginlib/include/pluginlib/class_loader.h
pkg/trunk/stacks/common/pluginlib/include/pluginlib/class_loader_imp.h
pkg/trunk/stacks/pr2/pr2_dashboard2/formbuilder/
pkg/trunk/stacks/pr2/pr2_dashboard2/formbuilder/motor_panel.fbp
pkg/trunk/stacks/pr2/pr2_dashboard2/xrc/
pkg/trunk/stacks/pr2/pr2_dashboard2/xrc/motor_panel.xrc
Removed Paths:
-------------
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/line.h
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/square.h
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/triangle.h
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/polygon_plugins.xml
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/shape_plugins.xml
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/polygon_manifest.cpp
pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/shape_manifest.cpp
pkg/trunk/stacks/common/pluginlib/include/pluginlib/plugin.h
pkg/trunk/stacks/common/pluginlib/include/pluginlib/plugin_loader.h
pkg/trunk/stacks/common/pluginlib/include/pluginlib/plugin_loader_imp.h
pkg/trunk/stacks/common/pluginlib/include/pluginlib/plugin_macros.h
Property Changed:
----------------
pkg/trunk/
Property changes on: pkg/trunk
___________________________________________________________________
Modified: svk:merge
- 637b03a7-42c1-4bbd-8d43-e365e379942c:/prfilters:13971
637b03a7-42c1-4bbd-8d43-e365e379942c:/rosTF_to_tf:9746
920d6130-5740-4ec1-bb1a-45963d5fd813:/costmap_rework_branch:20583
920d6130-5740-4ec1-bb1a-45963d5fd813:/frameidpr:7015
920d6130-5740-4ec1-bb1a-45963d5fd813:/nav_rework:21482
920d6130-5740-4ec1-bb1a-45963d5fd813:/users/josh-pr:11755
920d6130-5740-4ec1-bb1a-45963d5fd813:/wgpkgtrunk:5865
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/action_branch:20116
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/common_msgs-0.1-v2:20514
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/common_msgs-0.1-v3:20628
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/common_msgs_0.1:20375
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/josh:10136
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/milestone2:16602
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/nav_rework:17337
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/plugin_branch:20980
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/rosbus:261
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/tags/milestone2_tags/milestone2_final:16577
+ 637b03a7-42c1-4bbd-8d43-e365e379942c:/prfilters:13971
637b03a7-42c1-4bbd-8d43-e365e379942c:/rosTF_to_tf:9746
920d6130-5740-4ec1-bb1a-45963d5fd813:/costmap_rework_branch:20583
920d6130-5740-4ec1-bb1a-45963d5fd813:/frameidpr:7015
920d6130-5740-4ec1-bb1a-45963d5fd813:/nav_rework:21482
920d6130-5740-4ec1-bb1a-45963d5fd813:/users/josh-pr:11755
920d6130-5740-4ec1-bb1a-45963d5fd813:/wgpkgtrunk:5865
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/action_branch:20116
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/common_msgs-0.1-v2:20514
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/common_msgs-0.1-v3:20628
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/common_msgs_0.1:20375
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/josh:10136
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/milestone2:16602
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/nav_rework:17337
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/plugin_branch:20980
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/pluginlib_rework:22236
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/branches/rosbus:261
f5854215-dd47-0410-b2c4-cdd35faa7885:/pkg/tags/milestone2_tags/milestone2_final:16577
Modified: pkg/trunk/controllers/qualification_controllers/joint_qualification_controllers/controller_plugins.xml
===================================================================
--- pkg/trunk/controllers/qualification_controllers/joint_qualification_controllers/controller_plugins.xml 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/controllers/qualification_controllers/joint_qualification_controllers/controller_plugins.xml 2009-08-19 03:27:46 UTC (rev 22237)
@@ -1,6 +1,6 @@
<library path="lib/libjoint_qualification_controllers">
- <plugin name="CheckoutController" class="CheckoutController" type="Controller" />
- <plugin name="HoldSetController" class="HoldSetController" type="Controller" />
- <plugin name="HysteresisController" class="HysteresisController" type="Controller" />
- <plugin name="SineSweepController" class="SineSweepController" type="Controller" />
+ <class name="CheckoutController" type="CheckoutController" base_class_type="Controller" />
+ <class name="HoldSetController" type="HoldSetController" base_class_type="Controller" />
+ <class name="HysteresisController" type="HysteresisController" base_class_type="Controller" />
+ <class name="SineSweepController" type="SineSweepController" base_class_type="Controller" />
</library>
Modified: pkg/trunk/controllers/qualification_controllers/joint_qualification_controllers/manifest.xml
===================================================================
--- pkg/trunk/controllers/qualification_controllers/joint_qualification_controllers/manifest.xml 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/controllers/qualification_controllers/joint_qualification_controllers/manifest.xml 2009-08-19 03:27:46 UTC (rev 22237)
@@ -19,7 +19,7 @@
<repository>http://pr.willowgarage.com/repos</repository>
<export>
<cpp cflags='-I${prefix}/include -I${prefix}/msg/cpp -I${prefix}/srv/cpp' lflags='-Wl,-rpath,${prefix}/lib -L${prefix}/lib -ljoint_qualification_controllers'/>
- <controller_interface controller="${prefix}/controller_plugins.xml" />
+ <controller_interface plugin="${prefix}/controller_plugins.xml" />
</export>
</package>
Modified: pkg/trunk/controllers/qualification_controllers/joint_qualification_controllers/src/controller_manifest.cpp
===================================================================
--- pkg/trunk/controllers/qualification_controllers/joint_qualification_controllers/src/controller_manifest.cpp 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/controllers/qualification_controllers/joint_qualification_controllers/src/controller_manifest.cpp 2009-08-19 03:27:46 UTC (rev 22237)
@@ -27,7 +27,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
-#include "pluginlib/plugin_macros.h"
+#include "pluginlib/class_list_macros.h"
#include "controller_interface/controller.h"
#include "joint_qualification_controllers/checkout_controller.h"
@@ -37,12 +37,7 @@
using namespace controller;
-BEGIN_PLUGIN_LIST(Controller)
-
-REGISTER_PLUGIN(CheckoutController)
-REGISTER_PLUGIN(HoldSetController)
-REGISTER_PLUGIN(HysteresisController)
-REGISTER_PLUGIN(SineSweepController)
-
-END_PLUGIN_LIST
-
+PLUGINLIB_REGISTER_CLASS(CheckoutController, CheckoutController, Controller)
+PLUGINLIB_REGISTER_CLASS(HoldSetController, HoldSetController, Controller)
+PLUGINLIB_REGISTER_CLASS(HysteresisController, HysteresisController, Controller)
+PLUGINLIB_REGISTER_CLASS(SineSweepController, SineSweepController, Controller)
Modified: pkg/trunk/controllers/robot_mechanism_controllers/controller_plugins.xml
===================================================================
--- pkg/trunk/controllers/robot_mechanism_controllers/controller_plugins.xml 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/controllers/robot_mechanism_controllers/controller_plugins.xml 2009-08-19 03:27:46 UTC (rev 22237)
@@ -1,20 +1,20 @@
<library path="lib/librobot_mechanism_controllers">
- <plugin name="JointEffortController" class="JointEffortController" type="Controller" />
+ <class name="JointEffortController" type="JointEffortController" base_class_type="Controller" />
- <plugin name="JointVelocityController" class="JointVelocityController" type="Controller" />
- <plugin name="JointPositionController" class="JointPositionController" type="Controller" />
+ <class name="JointVelocityController" type="JointVelocityController" base_class_type="Controller" />
+ <class name="JointPositionController" type="JointPositionController" base_class_type="Controller" />
- <plugin name="CartesianWrenchController" class="CartesianWrenchController" type="Controller" />
- <plugin name="CartesianTwistController" class="CartesianTwistController" type="Controller" />
- <plugin name="CartesianPoseController" class="CartesianPoseController" type="Controller" />
+ <class name="CartesianWrenchController" type="CartesianWrenchController" base_class_type="Controller" />
+ <class name="CartesianTwistController" type="CartesianTwistController" base_class_type="Controller" />
+ <class name="CartesianPoseController" type="CartesianPoseController" base_class_type="Controller" />
- <plugin name="JointUDCalibrationController" class="JointUDCalibrationController" type="Controller" />
+ <class name="JointUDCalibrationController" type="JointUDCalibrationController" base_class_type="Controller" />
- <plugin name="CartesianTrajectoryController" class="CartesianTrajectoryController" type="Controller" />
+ <class name="CartesianTrajectoryController" type="CartesianTrajectoryController" base_class_type="Controller" />
- <plugin name="TriggerController" class="TriggerController" type="Controller" />
- <plugin name="TriggerControllerNode" class="TriggerControllerNode" type="Controller" />
+ <class name="TriggerController" type="TriggerController" type="Controller" />
+ <class name="TriggerControllerNode" type="TriggerControllerNode" base_class_type="Controller" />
- <plugin name="JointPDController" class="JointPDController" type="Controller" />
- <plugin name="JointPDControllerNode" class="JointPDControllerNode" type="Controller" />
+ <class name="JointPDController" type="JointPDController" base_class_type="Controller" />
+ <class name="JointPDControllerNode" type="JointPDControllerNode" base_class_type="Controller" />
</library>
Modified: pkg/trunk/controllers/robot_mechanism_controllers/manifest.xml
===================================================================
--- pkg/trunk/controllers/robot_mechanism_controllers/manifest.xml 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/controllers/robot_mechanism_controllers/manifest.xml 2009-08-19 03:27:46 UTC (rev 22237)
@@ -33,7 +33,7 @@
<export>
<cpp cflags="-I${prefix}/include -I${prefix}/msg/cpp -I${prefix}/srv/cpp"
lflags="-Wl,-rpath,${prefix}/lib/ -L${prefix}/lib -lrobot_mechanism_controllers" />
- <controller_interface controller="${prefix}/controller_plugins.xml" />
+ <controller_interface plugin="${prefix}/controller_plugins.xml" />
</export>
<rosdep name="libtool"/>
</package>
Modified: pkg/trunk/controllers/robot_mechanism_controllers/src/controller_manifest.cpp
===================================================================
--- pkg/trunk/controllers/robot_mechanism_controllers/src/controller_manifest.cpp 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/controllers/robot_mechanism_controllers/src/controller_manifest.cpp 2009-08-19 03:27:46 UTC (rev 22237)
@@ -27,7 +27,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
-#include "pluginlib/plugin_macros.h"
+#include "pluginlib/class_list_macros.h"
#include "controller_interface/controller.h"
#include "robot_mechanism_controllers/cartesian_pose_controller.h"
@@ -43,25 +43,22 @@
using namespace controller;
-BEGIN_PLUGIN_LIST(Controller)
-REGISTER_PLUGIN(JointEffortController)
-REGISTER_PLUGIN(JointVelocityController)
-REGISTER_PLUGIN(JointPositionController)
+PLUGINLIB_REGISTER_CLASS(JointEffortController, JointEffortController, Controller)
+PLUGINLIB_REGISTER_CLASS(JointVelocityController, JointVelocityController, Controller)
+PLUGINLIB_REGISTER_CLASS(JointPositionController, JointPositionController, Controller)
-REGISTER_PLUGIN(CartesianWrenchController)
-REGISTER_PLUGIN(CartesianTwistController)
-REGISTER_PLUGIN(CartesianPoseController)
+PLUGINLIB_REGISTER_CLASS(CartesianWrenchController, CartesianWrenchController, Controller)
+PLUGINLIB_REGISTER_CLASS(CartesianTwistController, CartesianTwistController, Controller)
+PLUGINLIB_REGISTER_CLASS(CartesianPoseController, CartesianPoseController, Controller)
-REGISTER_PLUGIN(JointUDCalibrationController)
+PLUGINLIB_REGISTER_CLASS(JointUDCalibrationController, JointUDCalibrationController, Controller)
-REGISTER_PLUGIN(CartesianTrajectoryController)
+PLUGINLIB_REGISTER_CLASS(CartesianTrajectoryController, CartesianTrajectoryController, Controller)
-REGISTER_PLUGIN(TriggerController);
-REGISTER_PLUGIN(TriggerControllerNode);
+PLUGINLIB_REGISTER_CLASS(TriggerController, TriggerController, Controller)
+PLUGINLIB_REGISTER_CLASS(TriggerControllerNode, TriggerControllerNode, Controller)
-REGISTER_PLUGIN(JointPDController)
-REGISTER_PLUGIN(JointPDControllerNode)
+PLUGINLIB_REGISTER_CLASS(JointPDController, JointPDController, Controller)
+PLUGINLIB_REGISTER_CLASS(JointPDControllerNode, JointPDControllerNode, Controller)
-END_PLUGIN_LIST
-
Modified: pkg/trunk/nav/people_aware_nav/bgp_plugin.xml
===================================================================
--- pkg/trunk/nav/people_aware_nav/bgp_plugin.xml 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/nav/people_aware_nav/bgp_plugin.xml 2009-08-19 03:27:46 UTC (rev 22237)
@@ -1,7 +1,7 @@
<library path="lib/libnavfn_constrained">
- <plugin name="NavfnROSConstrained" class="people_aware_nav::NavfnROSConstrained" type="nav_core::BaseGlobalPlanner">
+ <class name="NavfnROSConstrained" type="people_aware_nav::NavfnROSConstrained" base_class_type="nav_core::BaseGlobalPlanner">
<description>
A constrained version of the navfn planner
</description>
- </plugin>
+ </class>
</library>
Modified: pkg/trunk/nav/people_aware_nav/manifest.xml
===================================================================
--- pkg/trunk/nav/people_aware_nav/manifest.xml 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/nav/people_aware_nav/manifest.xml 2009-08-19 03:27:46 UTC (rev 22237)
@@ -24,7 +24,7 @@
<depend package="roscpp" />
<export>
<cpp cflags="-I${prefix}/include -I${prefix}/srv/cpp -I${prefix}/msg/cpp" lflags="-Wl,-rpath,${prefix}/lib -L${prefix}/lib -lnavfn_constrained"/>
- <nav_core BaseGlobalPlanner="${prefix}/bgp_plugin.xml" />
+ <nav_core plugin="${prefix}/bgp_plugin.xml" />
</export>
</package>
Modified: pkg/trunk/nav/people_aware_nav/src/navfn_constrained.cpp
===================================================================
--- pkg/trunk/nav/people_aware_nav/src/navfn_constrained.cpp 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/nav/people_aware_nav/src/navfn_constrained.cpp 2009-08-19 03:27:46 UTC (rev 22237)
@@ -37,11 +37,9 @@
#include <people_aware_nav/navfn_constrained.h>
#include <visualization_msgs/Marker.h>
#include <ros/ros.h>
-#include <pluginlib/plugin_macros.h>
+#include <pluginlib/class_list_macros.h>
-BEGIN_PLUGIN_LIST(nav_core::BaseGlobalPlanner);
-REGISTER_PLUGIN(people_aware_nav::NavfnROSConstrained);
-END_PLUGIN_LIST
+PLUGINLIB_REGISTER_CLASS(NavfnROSConstrained, people_aware_nav::NavfnROSConstrained, nav_core::BaseGlobalPlanner);
namespace people_aware_nav {
Modified: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/CMakeLists.txt
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/CMakeLists.txt 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/CMakeLists.txt 2009-08-19 03:27:46 UTC (rev 22237)
@@ -29,6 +29,4 @@
#rospack_add_executable(example examples/example.cpp)
#target_link_libraries(example ${PROJECT_NAME})
-rospack_add_library(square src/square.cpp src/triangle.cpp src/polygon_manifest.cpp)
-
-rospack_add_library(line src/line.cpp src/shape_manifest.cpp)
+rospack_add_library(polyShapes src/square.cpp src/triangle.cpp src/line.cpp src/manifest.cpp)
Deleted: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/line.h
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/line.h 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/line.h 2009-08-19 03:27:46 UTC (rev 22237)
@@ -1,46 +0,0 @@
-/*********************************************************************
-*
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of Willow Garage, Inc. nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*
-* Author: Eitan Marder-Eppstein
-*********************************************************************/
-#ifndef LINE_H_
-#define LINE_H_
-
-#include "pluginlib_tutorial_interfaces/shape.h"
-
-class line : public shape {
-public:
- virtual double area() const;
-};
-#endif
Copied: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/pluginlib_tutorial_provider/line.h (from rev 21542, pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/line.h)
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/pluginlib_tutorial_provider/line.h (rev 0)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/pluginlib_tutorial_provider/line.h 2009-08-19 03:27:46 UTC (rev 22237)
@@ -0,0 +1,46 @@
+/*********************************************************************
+*
+* Software License Agreement (BSD License)
+*
+* Copyright (c) 2008, Willow Garage, Inc.
+* All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+*
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above
+* copyright notice, this list of conditions and the following
+* disclaimer in the documentation and/or other materials provided
+* with the distribution.
+* * Neither the name of Willow Garage, Inc. nor the names of its
+* contributors may be used to endorse or promote products derived
+* from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+* POSSIBILITY OF SUCH DAMAGE.
+*
+* Author: Eitan Marder-Eppstein
+*********************************************************************/
+#ifndef LINE_H_
+#define LINE_H_
+
+#include "pluginlib_tutorial_interfaces/shape.h"
+
+class line : public shape {
+public:
+ virtual double area() const;
+};
+#endif
Copied: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/pluginlib_tutorial_provider/square.h (from rev 21542, pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/square.h)
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/pluginlib_tutorial_provider/square.h (rev 0)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/pluginlib_tutorial_provider/square.h 2009-08-19 03:27:46 UTC (rev 22237)
@@ -0,0 +1,49 @@
+/*********************************************************************
+*
+* Software License Agreement (BSD License)
+*
+* Copyright (c) 2008, Willow Garage, Inc.
+* All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+*
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above
+* copyright notice, this list of conditions and the following
+* disclaimer in the documentation and/or other materials provided
+* with the distribution.
+* * Neither the name of Willow Garage, Inc. nor the names of its
+* contributors may be used to endorse or promote products derived
+* from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+* POSSIBILITY OF SUCH DAMAGE.
+*
+* Author: Eitan Marder-Eppstein
+*********************************************************************/
+#ifndef SQUARE_H_
+#define SQUARE_H_
+
+#include "pluginlib_tutorial_interfaces/polygon.h"
+
+class square : public polygon {
+public:
+ square();
+ virtual double area() const;
+private:
+ std::string name_;
+};
+#endif
Copied: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/pluginlib_tutorial_provider/triangle.h (from rev 21542, pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/triangle.h)
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/pluginlib_tutorial_provider/triangle.h (rev 0)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/pluginlib_tutorial_provider/triangle.h 2009-08-19 03:27:46 UTC (rev 22237)
@@ -0,0 +1,47 @@
+/*********************************************************************
+*
+* Software License Agreement (BSD License)
+*
+* Copyright (c) 2008, Willow Garage, Inc.
+* All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+*
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above
+* copyright notice, this list of conditions and the following
+* disclaimer in the documentation and/or other materials provided
+* with the distribution.
+* * Neither the name of Willow Garage, Inc. nor the names of its
+* contributors may be used to endorse or promote products derived
+* from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+* POSSIBILITY OF SUCH DAMAGE.
+*
+* Author: Eitan Marder-Eppstein
+*********************************************************************/
+#ifndef TRIANGLE_H_
+#define TRIANGLE_H_
+
+#include "pluginlib_tutorial_interfaces/polygon.h"
+
+class triangle : public polygon {
+public:
+ triangle();
+ virtual double area() const;
+};
+#endif
Deleted: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/square.h
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/square.h 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/square.h 2009-08-19 03:27:46 UTC (rev 22237)
@@ -1,49 +0,0 @@
-/*********************************************************************
-*
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of Willow Garage, Inc. nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*
-* Author: Eitan Marder-Eppstein
-*********************************************************************/
-#ifndef SQUARE_H_
-#define SQUARE_H_
-
-#include "pluginlib_tutorial_interfaces/polygon.h"
-
-class square : public polygon {
-public:
- square();
- virtual double area() const;
-private:
- std::string name_;
-};
-#endif
Deleted: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/triangle.h
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/triangle.h 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/include/triangle.h 2009-08-19 03:27:46 UTC (rev 22237)
@@ -1,47 +0,0 @@
-/*********************************************************************
-*
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of Willow Garage, Inc. nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*
-* Author: Eitan Marder-Eppstein
-*********************************************************************/
-#ifndef TRIANGLE_H_
-#define TRIANGLE_H_
-
-#include "pluginlib_tutorial_interfaces/polygon.h"
-
-class triangle : public polygon {
-public:
- triangle();
- virtual double area() const;
-};
-#endif
Modified: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/manifest.xml
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/manifest.xml 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/manifest.xml 2009-08-19 03:27:46 UTC (rev 22237)
@@ -12,7 +12,11 @@
<depend package="pluginlib_tutorial_interfaces"/>
<export>
+ <cpp cflags="-I${prefix}/include/" lflags="-Wl,-rpath,${prefix}/lib -L${prefix}/lib -lpolyShapes"/>
+ <!--
<pluginlib_tutorial_interfaces polygon="${prefix}/polygon_plugins.xml" shape="${prefix}/shape_plugins.xml"/>
+ -->
+ <pluginlib_tutorial_interfaces plugin="${prefix}/plugins.xml"/>
</export>
</package>
Deleted: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/polygon_plugins.xml
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/polygon_plugins.xml 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/polygon_plugins.xml 2009-08-19 03:27:46 UTC (rev 22237)
@@ -1,13 +0,0 @@
-<library path="lib/libsquare">
- <plugin name="square" class="square" type="polygon">
- <description>
- this is a square plugin
- </description>
- </plugin>
-
- <plugin name="triangle" class="triangle" type="polygon">
- <description>
- this is a triangle plugin
- </description>
- </plugin>
-</library>
Deleted: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/shape_plugins.xml
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/shape_plugins.xml 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/shape_plugins.xml 2009-08-19 03:27:46 UTC (rev 22237)
@@ -1,8 +0,0 @@
-<library path="lib/libline">
- <plugin name="line" class="line" type="shape">
- <description>
- this is a line plugin
- </description>
- </plugin>
-
-</library>
Modified: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/line.cpp
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/line.cpp 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/line.cpp 2009-08-19 03:27:46 UTC (rev 22237)
@@ -27,7 +27,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
-#include "line.h"
+#include "pluginlib_tutorial_provider/line.h"
#include <cmath>
Deleted: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/polygon_manifest.cpp
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/polygon_manifest.cpp 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/polygon_manifest.cpp 2009-08-19 03:27:46 UTC (rev 22237)
@@ -1,48 +0,0 @@
-/*********************************************************************
-*
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of Willow Garage, Inc. nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*
-* Author: Eitan Marder-Eppstein
-*********************************************************************/
-#include "pluginlib/plugin_macros.h"
-#include "polygon.h"
-#include "square.h"
-#include "triangle.h"
-
-//polygon plugin list
-BEGIN_PLUGIN_LIST(polygon)
-
-REGISTER_PLUGIN(triangle)
-REGISTER_PLUGIN(square)
-
-END_PLUGIN_LIST
Deleted: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/shape_manifest.cpp
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/shape_manifest.cpp 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/shape_manifest.cpp 2009-08-19 03:27:46 UTC (rev 22237)
@@ -1,46 +0,0 @@
-/*********************************************************************
-*
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of Willow Garage, Inc. nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*
-* Author: Eitan Marder-Eppstein
-*********************************************************************/
-#include "pluginlib/plugin_macros.h"
-#include "shape.h"
-#include "line.h"
-
-//shape plugin list
-BEGIN_PLUGIN_LIST(shape)
-
-REGISTER_PLUGIN(line)
-
-END_PLUGIN_LIST
Modified: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/square.cpp
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/square.cpp 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/square.cpp 2009-08-19 03:27:46 UTC (rev 22237)
@@ -27,7 +27,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
-#include "square.h"
+#include "pluginlib_tutorial_provider/square.h"
#include <cmath>
Modified: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/triangle.cpp
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/triangle.cpp 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_provider/src/triangle.cpp 2009-08-19 03:27:46 UTC (rev 22237)
@@ -34,7 +34,7 @@
*
* Author: Eitan Marder-Eppstein
*********************************************************************/
-#include "triangle.h"
+#include "pluginlib_tutorial_provider/triangle.h"
#include <cmath>
triangle::triangle(){}
Modified: pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_user/example.cpp
===================================================================
--- pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_user/example.cpp 2009-08-19 03:25:05 UTC (rev 22236)
+++ pkg/trunk/sandbox/pluginlib_tutorials/pluginlib_tutorial_user/example.cpp 2009-08-19 03:27:46 UTC (rev 22237)
@@ -31,24 +31,24 @@
#include "pluginlib_tutorial_interfaces/polygon.h"
#include "pluginlib_tutorial_interfaces/shape.h"
-#include "pluginlib/plugin_loader.h"
+#include "pluginlib/class_loader.h"
int main() {
- pluginlib::PluginLoader<polygon> cl("pluginlib_tutorial_interfaces", "polygon");
+ pluginlib::ClassLoader<polygon> cl("pluginlib_tutorial_interfaces", "polygon");
ROS_INFO("Created Class Loader of polygon");
ROS_INFO("Available plugins are:");
- std::vector<std::string> plugins = cl.getDeclaredPlugins();
+ std::vector<std::string> plugins = cl.getDeclaredClasses();
for (std::vector<std::string>::iterator it = plugins.begin(); it != plugins.end() ; ++it)
{
- ROS_INFO("%s is in package %s and is of type %s", it->c_str(), cl.getPluginPackage(*it).c_str(), cl.getPluginType(*it).c_str());
- ROS_INFO("It does \"%s\"", cl.getPluginDescription(*it).c_str());
- ROS_INFO("It is found in library %s", cl.getPluginLibraryPath(*it).c_str());
+ ROS_INFO("%s is in package %s and is of type %s", it->c_str(), cl.getClassPackage(*it).c_str(), cl.getClassType(*it).c_str());
+ ROS_INFO("It does \"%s\"", cl.getClassDescription(*it).c_str());
+ //ROS_INFO("It is found in library %s", cl.getClassLibraryPath(*it).c_str());
}
- if (cl.loadPlugin("square"))
+ if (cl.loadClass("square"))
{
ROS_INFO("Loaded library with plugin square inside");
}
@@ -57,39 +57,39 @@
ROS_INFO("Failed to load library with plugin square inside");
}
- if (cl.isPluginLoaded("square"))
+ if (cl.isClassLoaded("square"))
{
ROS_INFO("Can create square");
- polygon * poly = cl.createPluginInstance("square");
+ polygon * poly = cl.createClassInstance("square");
// use the class
poly->set_side_length(7);
ROS_INFO("The square area is: %.2f", poly->area());
}
- else ROS_INFO("Square Plugin not loaded");
+ else ROS_INFO("Square Class not loaded");
ROS_INFO("Created square, trying triangle next");
- if (cl.isPluginLoaded("triangle"))
+ if (cl.isClassLoaded("triangle"))
{
- polygon * tri = cl.createPluginInstance("triangle");
+ polygon * tri = cl.createClassInstance("triangle");
// use the class
tri->set_side_length(7);
ROS_INFO("The triangle area is: %.2f", tri->area());
}
- else ROS_INFO("Triangle Plugin not loaded");
+ else ROS_INFO("Triangle Class not loaded");
- if (!cl.loadPlugin("line"))
+ if (!cl.loadClass("line"))
ROS_ERROR("Correctly failed to load line in polygon loader");
- pluginlib::PluginLoader<shape> ph("pluginlib_tutorial_interfaces", "shape");
+ pluginlib::ClassLoader<shape> ph("pluginlib_tutorial_interfaces", "shape");
- if (!ph.loadPlugin("line"))
+ if (!ph.loadClass("line"))
ROS_ERROR("Failed to load line");
- if (ph.isPluginLoaded("line"))
+ if (ph.isClassLoaded("line"))
{
- shape * sh = ph.createPluginInstance("line");
+ shape * sh = ph.createClassInstance("line");
// use the class
sh->set_side_length(7);
ROS_INFO("The line area is: %.2f", sh->area());
@@ -97,18 +97,18 @@
else
ROS_ERROR("Cloudn't find line lib");
- std::vector<std::string> libs = cl.getLoadedLibraries();
- ROS_INFO("Libraries in cl are:");
- for (std::vector<std::string>::iterator it = libs.begin(); it != libs.end() ; ++it)
- {
- ROS_INFO("Library name %s", it->c_str());
- std::vector<std::string> plugins = cl.getPluginsInLibrary(*it);
- ROS_INFO(" With plugins:");
- for (std::vector<std::string>::iterator it2 = plugins.begin(); it2 != plugins.end() ; ++it2)
- {
- ROS_INFO(" %s", it2->c_str());
- }
- }
+ //std::vector<std::string> libs = cl.getLoadedLibraries();
+ //ROS_INFO("Libraries in cl are:");
+ //for (std::vector<std::string>::iterator it = libs.begin(); it != libs.end() ; ++it)
+ //{
+ // ROS_INFO("Library name %s", it->c_str());
+ // std::vector<std::string> plugins = cl.getClassesInLibrary(*it);
+ // ROS_INFO(" With plugins:");
+ // for (std::vector<std::string>::iterator it2 = plugins.begin(); it2 != plugins.end() ; ++it2)
+ // {
+ // ROS_INFO(" %s", it2->c_str());
+ // }
+ //}
return 0;
}
Copied: pkg/trunk/stacks/common/pluginlib/include/pluginlib/class_desc.h (from rev 22232, pkg/trunk/stacks/common/pluginlib/include/pluginlib/plugin.h)
===================================================================
--- pkg/trunk/stacks/common/pluginlib/include/pluginlib/class_desc.h (rev 0)
+++ pkg/trunk/stacks/common/pluginlib/include/pluginlib/class_desc.h 2009-08-19 03:27:46 UTC (rev 22237)
@@ -0,0 +1,73 @@
+/*********************************************************************
+*
+* Software License Agreement (BSD License)
+*
+* Copyright (c) 2008, Willow Garage, Inc.
+* All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+*
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above
+* copyright notice, this list of conditions and the following
+* disclaimer in the documentation and/or other materials provided
+* with the distribution.
+* * Neither the name of Willow Garage, Inc. nor the names of its
+* contributors may be used to endorse or promote products derived
+* from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+* POSSIBILITY OF SUCH DAMAGE.
+*
+* Author: Eitan Marder-Eppstein
+*********************************************************************/
+#ifndef PLUGINLIB_CLASS_DESC_H_
+#define PLUGINLIB_CLASS_DESC_H_
+namespace pluginlib {
+ /**
+ * @class ClassDesc
+ * @brief Storage for information about a given class
+ */
+ class ClassDesc
+ {
+ public:
+ /**
+ * @brief Constructor for a ClassDesc
+ * @param lookup_name The lookup name of the class
+ * @param derived_class The type of the derived class of the class
+ * @param base_class The type of the class, corresponds to the type of the base class
+ * @param package The package the class lives in
+ * @param description A description for the class
+ * @param library_path The path to the containing library for the class
+ */
+ ClassDesc(const std::string& lookup_name, const std::string& derived_class, const std::string& base_class, const std::string& package,
+ const std::string& description, const std::string& library_path):
+ lookup_name_(lookup_name),
+ derived_class_(derived_class),
+ base_class_(base_class),
+ package_(package),
+ description_(description),
+ library_path_ (library_path){};
+
+ std::string lookup_name_;
+ std::string derived_class_;
+ std::string base_class_;
+ std::string package_;
+ std::string description_;
+ std::string library_path_;
+ };
+};
+#endif
Copied: pkg/trunk/stacks/common/pluginlib/include/pluginlib/class_list_macros.h (from rev 22232, pkg/trunk/stacks/common/pluginlib/include/pluginlib/plugin_macros.h)
===================================================================
--- pkg/trunk/stacks/common/pluginlib/include/pluginlib/class_list_macros.h (rev 0)
+++ pkg/trunk/stacks/common/pluginlib/include/pluginlib/class_list_macros.h 2009-08-19 03:27:46 UTC (rev 22237)
@@ -0,0 +1,46 @@
+/*********************************************************************
+*
+* Software License Agreement (BSD License)
+*
+* Copyright (c) 2008, Willow Garage, Inc.
+* All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+*
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above
+* copyright notice, this list of conditions and the following
+* disclaimer in the documentation and/or other materials provided
+* with the distribution.
+* * Neither the name of Willow Garage, Inc. nor the names of its
+* contributors may be used to endorse or promote products derived
+* from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+* POSSIBILITY OF SUCH DAMAGE.
+*
+* Author: Eitan Marder-Eppstein
+*********************************************************************/
+#ifndef PLUGINLIB_CLASS_LIST_MACROS_H_
+#define PLUGINLIB_CLASS_LIST_MACROS_H_
+#include "Poco/ClassLibrary.h"
+
+#define PLUGINLIB_REGISTER_CLASS(class_name, class_type, base_class_type) \
+ POCO_BEGIN_NAMED_MANIFEST(class_name, base_class_type) \
+ POCO_EXPORT_CLASS(class_type) \
+ POCO_END_MANIFEST
+
+#endif
Copied: pkg/trunk/stacks/common/pluginlib/include/pluginlib/class_loader.h (from rev 22232, pkg/trunk/stacks/common/pluginlib/include/pluginlib/plugin_loader.h)
===================================================================
--- pkg/trunk/stacks/common/pluginlib/include/pluginlib/class_loader.h (rev 0)
+++ pkg/trunk/stacks/common/pluginlib/include/pluginlib/class_loader.h 2009-08-19 03:27:46 UTC (rev 22237)
@@ -0,0 +1,192 @@
+/*
+ * Copyright (c) 2009, Willow Garage, Inc.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * * Neither the name of the Willow Garage, Inc. nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+#ifndef PLUGINLIB_CLASS_LOADER_H
+#define PLUGINLIB_CLASS_LOADER_H
+
+#include "ros/console.h"
+
+#include "pluginlib/class_desc.h"
+
+#include "Poco/ClassLoader.h"
+#include "ros/package.h"
+#include "tinyxml/tinyxml.h"
+#include <vector>
+#include <map>
+
+#include "boost/filesystem.hpp"
+
+namespace fs = boost::filesystem;
+
+
+
+namespace pluginlib
+{
+
+ /**
+ * @class ClassLoader
+ * @brief A class to help manage and load classes
+ */
+ template <class T>
+ class ClassLoader
+ {
+ private:
+ typedef std::map<std::string, unsigned int> LibraryCountMap;
+
+ public:
+ typedef typename std::map<std::string, ClassDesc>::iterator ClassMapIterator;
+
+ public:
+ /**
+ * @brief Constructor for a ClassLoader
+ * @param package The package containing the base class
+ * @param base_class The type of the base class for classes to be loaded
+ * @param attrib_name The attribute to search for in manifext.xml files, defaults to "plugin"
+ */
+ ClassLoader(std::string package, std::string base_class, std::string attrib_name = std::string("plugin"));
+
+ /**
+ * @brief Destructor for ClassLoader
+ */
+ ~ClassLoader();
+
+ /**
+ * @brief Returns a list of all available classes for this ClassLoader's base class type
+ * @return A vector of strings corresponding to the names of all available classes
+ */
+ std::vector<std::string> getDeclaredClasses();
+
+ /**
+ * @brief Given the lookup name of a class, returns the type of the derived class associated with it
+ * @param lookup_name The name of the class
+ * @return The name of the associated derived class
+ */
+ std::string getClassType(const std::string& lookup_name);
+
+ /**
+ * @brief Given the lookup name of a class, returns its description
+ * @param lookup_name The lookup name of the class
+ * @return The description of the class
+ */
+ std::string getClassDescription(const std::string& lookup_name);
+
+ /**
+ * @brief Given the lookup name of a class, returns the type of the associated base class
+ * @param lookup_name The lookup name of the class
+ ...
[truncated message content] |