TopicCurveHandler.hh
Go to the documentation of this file.
1/*
2 * Copyright (C) 2016 Open Source Robotics Foundation
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *
16*/
17
18#ifndef GAZEBO_GUI_PLOT_TOPICCURVEHANDLER_HH_
19#define GAZEBO_GUI_PLOT_TOPICCURVEHANDLER_HH_
20
21#include <memory>
22#include <string>
23
25#include "gazebo/util/system.hh"
26
27namespace google
28{
29 namespace protobuf
30 {
31 class Message;
32 }
33}
34
35namespace gazebo
36{
37 namespace gui
38 {
39 // Forward declare private data class
40 class TopicCurveHandlerPrivate;
41
43 class GZ_GUI_VISIBLE TopicCurveHandler
44 {
47
50
55 public: void AddCurve(const std::string &_query, PlotCurveWeakPtr _curve);
56
59 public: void RemoveCurve(PlotCurveWeakPtr _curve);
60
64 public: bool HasCurve(PlotCurveWeakPtr _curve) const;
65
68 public: unsigned int CurveCount() const;
69
71 private: std::unique_ptr<TopicCurveHandlerPrivate> dataPtr;
72 };
73 }
74}
75#endif
gui
Definition KeyEventHandler.hh:29
default namespace for gazebo
Manages and updates curves based on topic data.
Definition TopicCurveHandler.hh:44
unsigned int CurveCount() const
Get the number of curves managed by this handler.
void RemoveCurve(PlotCurveWeakPtr _curve)
Remove a curve from the topic data handler.
bool HasCurve(PlotCurveWeakPtr _curve) const
Get whether this topic data handler has the specified curve.
void AddCurve(const std::string &_query, PlotCurveWeakPtr _curve)
Add a curve to be updated.
std::weak_ptr< PlotCurve > PlotCurveWeakPtr
Definition PlottingTypes.hh:41
Forward declarations for the common classes.
Definition Animation.hh:27
Definition ConfigWidget.hh:34