Flexiv RDK APIs  1.5
tool.hpp
Go to the documentation of this file.
1 
6 #ifndef FLEXIV_RDK_TOOL_HPP_
7 #define FLEXIV_RDK_TOOL_HPP_
8 
9 #include "robot.hpp"
10 
11 namespace flexiv {
12 namespace rdk {
13 
19 class Tool
20 {
21 public:
27  Tool(const Robot& robot);
28  virtual ~Tool();
29 
36  const std::vector<std::string> list() const;
37 
44  const std::string name() const;
45 
53  bool exist(const std::string& name) const;
54 
61  const ToolParams params() const;
62 
71  const ToolParams params(const std::string& name) const;
72 
83  void Add(const std::string& name, const ToolParams& params);
84 
95  void Switch(const std::string& name);
96 
107  void Update(const std::string& name, const ToolParams& params);
108 
118  void Remove(const std::string& name);
119 
120 private:
121  class Impl;
122  std::unique_ptr<Impl> pimpl_;
123 };
124 
125 } /* namespace rdk */
126 } /* namespace flexiv */
127 
128 #endif /* FLEXIV_RDK_TOOL_HPP_ */
Main interface with the robot, containing several function categories and background services.
Definition: robot.hpp:25
Interface to online update and interact with the robot tools. All updates will take effect immediatel...
Definition: tool.hpp:20
void Switch(const std::string &name)
[Blocking] Switch to an existing tool. All following robot operations will default to use this tool.
const std::vector< std::string > list() const
[Blocking] Get a name list of all configured tools.
bool exist(const std::string &name) const
[Blocking] Whether the specified tool already exists.
void Update(const std::string &name, const ToolParams &params)
[Blocking] Update the parameters of an existing tool.
const ToolParams params() const
[Blocking] Get parameters of the tool that the robot is currently using.
void Remove(const std::string &name)
[Blocking] Remove an existing tool.
void Add(const std::string &name, const ToolParams &params)
[Blocking] Add a new tool with user-specified parameters.
const ToolParams params(const std::string &name) const
[Blocking] Get parameters of an existing tool.
Tool(const Robot &robot)
[Non-blocking] Create an instance and initialize the interface.
const std::string name() const
[Blocking] Get name of the tool that the robot is currently using.
Data structure containing robot tool parameters.
Definition: data.hpp:323