17 #ifndef _TOPICVIEW_HH_ 
   18 #define _TOPICVIEW_HH_ 
   23 #include <boost/thread/mutex.hpp> 
   40     class GZ_GUI_VISIBLE TopicCombo : 
public QComboBox
 
   47       public: TopicCombo(QWidget *_w, 
const std::string &_msgTypeName,
 
   51       public: 
virtual ~TopicCombo();
 
   55       public: 
void SetMsgTypeName(
const std::string &_type);
 
   59       public: 
virtual void showPopup();
 
   62       private: 
void UpdateList();
 
   65       private: std::string msgTypeName;
 
   68       private: std::string viewType;
 
   73       private: boost::mutex mutex;
 
   88       public: 
TopicView(QWidget *_parent, 
const std::string &_msgType,
 
   89                         const std::string &_viewType,
 
   90                         unsigned int _displayPeriod = 500);
 
   97       public: 
virtual void SetTopic(
const std::string &_topicName);
 
  104       protected: 
void OnMsg(
const common::Time &_dataTime, 
int _size);
 
  108       protected: 
virtual void closeEvent(QCloseEvent *_event);
 
  111       private slots: 
void Update();
 
  115       private: 
virtual void UpdateImpl();
 
  120       private slots: 
void OnTopicChanged(
int _index);
 
  135       private: TopicCombo *topicCombo;
 
  144       private: QLineEdit *hzEdit;
 
  150       private: QLineEdit *bandwidthEdit;
 
  153       private: std::list<int> msgSizes;
 
  156       private: std::list<common::Time> times;
 
  159       private: std::list<common::Time> dataTimes;
 
  162       private: boost::mutex updateMutex;
 
Forward declarations for transport. 
boost::shared_ptr< Subscriber > SubscriberPtr
Definition: TransportTypes.hh:53
QFrame * frame
This is the frame that each child class should populate. 
Definition: TopicView.hh:123
boost::shared_ptr< Node > NodePtr
Definition: TransportTypes.hh:57
transport::NodePtr node
Pointer to the node for communication. 
Definition: TopicView.hh:129
std::string msgTypeName
Typename of the messages that can be displayed. 
Definition: TopicView.hh:132
Base class for widgets that display topic data. 
Definition: TopicView.hh:78
transport::SubscriberPtr sub
Pointer to the topic subscriber that receives display data. 
Definition: TopicView.hh:126
A Time class, can be used to hold wall- or sim-time. 
Definition: Time.hh:44