3 * Wireshark - Network traffic analyzer
4 * By Gerald Combs <gerald@wireshark.org>
5 * Copyright 1998 Gerald Combs
7 * SPDX-License-Identifier: GPL-2.0-or-later*/
9 #ifndef SCTP_GRAPH_DIALOG_H
10 #define SCTP_GRAPH_DIALOG_H
20 class SCTPGraphDialog;
23 class QCPAbstractPlottable;
26 struct _sctp_assoc_info;
34 struct data_chunk_header {
49 struct sack_chunk_header {
60 struct nr_sack_chunk_header {
67 guint16 nr_of_nr_gaps;
74 class SCTPGraphDialog : public QDialog
79 explicit SCTPGraphDialog(QWidget *parent = 0, struct _sctp_assoc_info *assoc = NULL, capture_file *cf = NULL, int dir = 0);
81 static void save_graph(QDialog *dlg, QCustomPlot *plot);
84 void setCaptureFile(capture_file *cf) { cap_file_ = cf; }
87 void on_pushButton_clicked();
89 void on_pushButton_2_clicked();
91 void on_pushButton_3_clicked();
93 void on_pushButton_4_clicked();
95 void graphClicked(QCPAbstractPlottable* plottable, QMouseEvent* event);
97 void on_saveButton_clicked();
100 Ui::SCTPGraphDialog *ui;
101 struct _sctp_assoc_info *selected_assoc;
102 capture_file *cap_file_;
105 QVector<double> xt, yt, xs, ys, xg, yg, xd, yd, xn, yn;
106 QVector<guint32> ft, fs, fg, fd, fn;
107 QVector<QString> typeStrings;
108 bool gIsSackChunkPresent;
109 bool gIsNRSackChunkPresent;
111 void drawGraph(int which);
113 void drawSACKGraph();
114 void drawNRSACKGraph();
117 #endif // SCTP_GRAPH_DIALOG_H
125 * indent-tabs-mode: nil
128 * ex: set shiftwidth=4 tabstop=8 expandtab:
129 * :indentSize=4:tabSize=8:noTabs=true: