package.h
Go to the documentation of this file.
1 #include "sick_scan/sick_scan_base.h" /* Base definitions included in all header files, added by add_sick_scan_base_header.py. Do not edit this line. */
2 /*
3  * Copyright (C) 2009, Willow Garage, Inc.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions are met:
7  * * Redistributions of source code must retain the above copyright notice,
8  * this list of conditions and the following disclaimer.
9  * * Redistributions in binary form must reproduce the above copyright
10  * notice, this list of conditions and the following disclaimer in the
11  * documentation and/or other materials provided with the distribution.
12  * * Neither the names of Stanford University or Willow Garage, Inc. nor the names of its
13  * contributors may be used to endorse or promote products derived from
14  * this software without specific prior written permission.
15  *
16  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
20  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26  * POSSIBILITY OF SUCH DAMAGE.
27  */
28 
29 #ifndef ROSLIB_PACKAGE_H
30 #define ROSLIB_PACKAGE_H
31 
32 #include <string>
33 #include <utility>
34 #include <vector>
35 #include <map>
36 
37 #if defined(__GNUC__)
38 # define ROS_DEPRECATED __attribute__((deprecated))
39 # define ROS_FORCE_INLINE __attribute__((always_inline))
40 #elif defined(MSVC)
41 # define ROS_DEPRECATED
42 # define ROS_FORCE_INLINE __forceinline
43 #else
44 # define ROS_DEPRECATED
45 # define ROS_FORCE_INLINE inline
46 #endif
47 
48 /*
49  Windows import/export and gnu http://gcc.gnu.org/wiki/Visibility
50  macros.
51  */
52 
53 #if defined(_MSC_VER)
54 # define ROS_HELPER_IMPORT __declspec(dllimport)
55 # define ROS_HELPER_EXPORT __declspec(dllexport)
56 #elif __GNUC__ >= 4
57 # define ROS_HELPER_IMPORT __attribute__ ((visibility("default")))
58 # define ROS_HELPER_EXPORT __attribute__ ((visibility("default")))
59 #else
60 # define ROS_HELPER_IMPORT
61 # define ROS_HELPER_EXPORT
62 #endif
63 
64 // Ignore warnings about import/exports when deriving from std classes.
65 #ifdef _MSC_VER
66 # pragma warning(disable: 4251)
67 # pragma warning(disable: 4275)
68 #endif
69 
70 #ifdef ROS_BUILD_SHARED_LIBS // ros is being built around shared libraries
71 # ifdef roslib_EXPORTS // we are building a shared lib/dll
72 # define ROSLIB_DECL ROS_HELPER_EXPORT
73 # else // we are using shared lib/dll
74 # define ROSLIB_DECL ROS_HELPER_IMPORT
75 # endif
76 #else // ros is being built around static libraries
77 # define ROSLIB_DECL
78 #endif
79 
80 namespace roswrap
81 {
82 namespace package
83 {
84 
85 typedef std::vector<std::string> V_string;
86 typedef std::map<std::string, std::string> M_string;
87 
91 ROSLIB_DECL std::string command(const std::string& cmd);
92 
96 ROSLIB_DECL void command(const std::string& cmd, V_string& output);
100 ROSLIB_DECL std::string getPath(const std::string& package_name);
105 
110 ROSLIB_DECL void getPlugins(const std::string& package, const std::string& attribute, V_string& plugins, bool force_recrawl=false);
111 
134  const std::string& name,
135  const std::string& attribute,
136  std::vector<std::pair<std::string, std::string> >& exports,
137  bool force_recrawl=false
138 );
139 
148 ROS_DEPRECATED ROSLIB_DECL void getPlugins(const std::string& package, const std::string& attribute, M_string& plugins, bool force_recrawl=false);
149 
150 } // namespace package
151 } // namespace roswrap
152 
153 #endif
roswrap::package::getAll
ROSLIB_DECL bool getAll(V_string &packages)
Gets a list of all packages. Returns false if it could not run the command.
roswrap::package::V_string
std::vector< std::string > V_string
Definition: package.h:85
package
string package
roswrap::package::M_string
std::map< std::string, std::string > M_string
Definition: package.h:86
api.setup.name
name
Definition: python/api/setup.py:12
roswrap::package::getPlugins
ROSLIB_DECL void getPlugins(const std::string &package, const std::string &attribute, V_string &plugins, bool force_recrawl=false)
Call the "rospack plugins" command, eg. "rospack plugins --attrib=<attribute> <package>"....
roswrap::package::getPath
ROSLIB_DECL std::string getPath(const std::string &package_name)
Returns the fully-qualified path to a package, or an empty string if the package is not found.
roswrap
Definition: param_modi.cpp:41
ROS_DEPRECATED
#define ROS_DEPRECATED
Definition: package.h:44
sick_scan_base.h
setup.packages
packages
Definition: tools/imu_delay_tester/setup.py:13
roswrap::package::command
ROSLIB_DECL std::string command(const std::string &cmd)
Runs a rospack command of the form 'rospack <cmd>', returning the output as a single string.
ROSLIB_DECL
#define ROSLIB_DECL
Definition: package.h:77


sick_scan_xd
Author(s): Michael Lehning , Jochen Sprickerhof , Martin Günther
autogenerated on Fri Oct 25 2024 02:47:09