17#ifndef GAZEBO_UTIL_INTROSPECTION_CLIENT_HH_
18#define GAZEBO_UTIL_INTROSPECTION_CLIENT_HH_
32 class IntrospectionClientPrivate;
57 const std::chrono::milliseconds _timeOut =
58 std::chrono::milliseconds::zero())
const;
62 public: std::set<std::string>
Managers()
const;
75 public:
bool NewFilter(
const std::string &_managerId,
76 const std::set<std::string> &_newItems,
77 std::string &_filterId,
78 std::string &_newTopic)
const;
95 public:
bool NewFilter(
const std::string &_managerId,
96 const std::set< std::string> &_newItems,
97 const std::function <
void(
98 const std::string &_filterId,
99 const std::string &_newTopic,
100 const bool _result)> &_cb)
const;
109 const std::string &_filterId,
110 const std::set<std::string> &_newItems)
const;
124 const std::string &_filterId,
125 const std::set<std::string> &_newItems,
126 const std::function <
void(
127 const bool _result)> &_cb)
const;
141 const std::string &_filterId)
const;
154 const std::string &_filterId,
155 const std::function <
void(
156 const bool _result)> &_cb)
const;
164 public:
bool Items(
const std::string &_managerId,
165 std::set<std::string> &_items)
const;
177 public:
bool Items(
const std::string &_managerId,
178 const std::function <
void(
179 const std::set<std::string> &_items,
180 const bool _result)> &_cb)
const;
189 const std::string &_item)
const;
198 const std::set<std::string> &_items)
const;
205 private:
bool IsManagerUsed(
const std::string &_managerId)
const;
209 private: std::unique_ptr<IntrospectionClientPrivate> dataPtr;
util
Definition Diagnostics.hh:33
addtogroup gazebo_util
Definition IntrospectionClient.hh:40
bool IsRegistered(const std::string &_managerId, const std::string &_item) const
Check if the _item is registered on a manager with _managerId.
IntrospectionClient()
Constructor.
virtual ~IntrospectionClient()
Destructor.
bool NewFilter(const std::string &_managerId, const std::set< std::string > &_newItems, const std::function< void(const std::string &_filterId, const std::string &_newTopic, const bool _result)> &_cb) const
Create a new filter for observing item updates.
bool UpdateFilter(const std::string &_managerId, const std::string &_filterId, const std::set< std::string > &_newItems) const
Update an existing filter with a different set of items.
bool IsRegistered(const std::string &_managerId, const std::set< std::string > &_items) const
Check if the _items are registered on a manager with _managerId.
std::set< std::string > Managers() const
Get the list of introspection managers currently available.
bool Items(const std::string &_managerId, const std::function< void(const std::set< std::string > &_items, const bool _result)> &_cb) const
Get a copy of the items already registered.
bool RemoveAllFilters() const
Remove all existing filters.
bool RemoveFilter(const std::string &_managerId, const std::string &_filterId, const std::function< void(const bool _result)> &_cb) const
Remove an existing filter.
bool UpdateFilter(const std::string &_managerId, const std::string &_filterId, const std::set< std::string > &_newItems, const std::function< void(const bool _result)> &_cb) const
Update an existing filter with a different set of items.
std::set< std::string > WaitForManagers(const std::chrono::milliseconds _timeOut=std::chrono::milliseconds::zero()) const
Wait for introspection managers to appear on the network.
bool RemoveFilter(const std::string &_managerId, const std::string &_filterId) const
Remove an existing filter.
bool Items(const std::string &_managerId, std::set< std::string > &_items) const
Get a copy of the items already registered.
bool NewFilter(const std::string &_managerId, const std::set< std::string > &_newItems, std::string &_filterId, std::string &_newTopic) const
Create a new filter for observing item updates.
Forward declarations for the common classes.
Definition Animation.hh:27