10#ifndef FOLLOW_STREAM_DIALOG_H
11#define FOLLOW_STREAM_DIALOG_H
32class FollowStreamDialog;
61 void addCodecs(
const QMap<QString, const char *> &codecMap);
70 bool follow(
bool use_stream_index =
false,
unsigned stream_num = 0,
unsigned sub_stream_num = 0);
79 bool eventFilter(QObject *obj, QEvent *event)
override;
121 int turns()
const {
return turns_; }
153 void cbCharsetCurrentIndexChanged(
int idx);
159 void deltaComboBoxCurrentIndexChanged(
int idx);
165 void cbDirectionsCurrentIndexChanged(
int idx);
175 void leFindReturnPressed();
196 void useRegexFind(
bool use_regex);
202 void findText(
bool go_back =
true);
218 void fillHintLabel(
int pkt = 0);
224 void goToPacketForTextPos(
int pkt = 0);
230 void streamNumberSpinBoxValueChanged(
int stream_num);
236 void subStreamNumberSpinBoxValueChanged(
int sub_stream_num);
241 void buttonBoxRejected();
262 static void resetStream(
void *tapData);
267 void removeStreamControls();
272 void resetStream(
void);
294 void showBuffer(QByteArray &
buffer,
size_t nchars,
bool is_from_server,
295 uint32_t packet_num,
nstime_t abs_ts, uint32_t *global_pos);
305 void readFollowStream();
319 void addText(QString text,
bool is_from_server, uint32_t packet_num,
bool colorize =
true);
321 void filterMenuAboutToShow(QMenu *,
bool);
324 Ui::FollowStreamDialog *ui;
327 QPushButton *b_filter_prepare_;
330 QPushButton *b_filter_apply_;
333 QPushButton *b_find_;
336 QPushButton *b_print_;
339 QPushButton *b_save_;
342 QPushButton *b_back_;
348 register_follow_t* follower_;
351 QString previous_filter_;
354 QString output_filter_;
357 QString follow_filter_;
360 int client_buffer_count_;
363 int server_buffer_count_;
366 int client_packet_count_;
369 int server_packet_count_;
372 uint32_t last_packet_;
375 bool last_from_server_;
384 bool use_regex_find_;
390 int previous_sub_stream_num_;
Manages a capture file and its associated state and operations.
Definition capture_file.h:27
bool follow(bool use_stream_index=false, unsigned stream_num=0, unsigned sub_stream_num=0)
Initiates the stream following process.
Definition follow_stream_dialog.cpp:1030
void goToPacket(int packet_num)
Signal emitted to navigate to a specific packet in the main window.
void updateFilter(QString filter, bool force)
Signal emitted to update the main display filter.
const follow_info_t & followInfo() const
Retrieves the core follow_info structure.
Definition follow_stream_dialog.h:127
~FollowStreamDialog()
Destroys the FollowStreamDialog.
Definition follow_stream_dialog.cpp:181
virtual QString clientToServerString() const
Gets the string representation for the client-to-server direction.
Definition follow_stream_dialog.cpp:996
FollowStreamDialog(QWidget &parent, CaptureFile &cf, int proto_id, const QString &previous_filter)
Constructs a new FollowStreamDialog.
Definition follow_stream_dialog.cpp:65
bool eventFilter(QObject *obj, QEvent *event) override
Filters events for the dialog text display.
Definition follow_stream_dialog.cpp:642
virtual QString bothDirectionsString() const
Gets the string representation for both directions.
Definition follow_stream_dialog.cpp:1022
void keyPressEvent(QKeyEvent *event) override
Handles key press events in the dialog.
Definition follow_stream_dialog.cpp:662
void captureFileClosed() override
Slot triggered when the underlying capture file is closed.
Definition follow_stream_dialog.cpp:1157
int server_packet_count() const
Gets the number of packets sent by the server.
Definition follow_stream_dialog.h:115
virtual QString labelHint(int pkt=0)
Generates a hint label based on the current packet.
Definition follow_stream_dialog.cpp:209
void endRetapPackets() override
Called when retap is complete.
Definition follow_stream_dialog.cpp:1136
virtual QString serverToClientString() const
Gets the string representation for the server-to-client direction.
Definition follow_stream_dialog.cpp:970
void addCodecs(const QMap< QString, const char * > &codecMap)
Adds a map of character encodings to the dialog's codec selection.
Definition follow_stream_dialog.cpp:187
int turns() const
Gets the number of direction changes (turns) in the stream.
Definition follow_stream_dialog.h:121
int client_packet_count() const
Gets the number of packets sent by the client.
Definition follow_stream_dialog.h:109
virtual void updateWidgets()
Updates the state and contents of the dialog's widgets.
Definition wireshark_dialog.cpp:92
WiresharkDialog(QWidget &parent, CaptureFile &capture_file)
Constructs a new WiresharkDialog object.
Definition wireshark_dialog.cpp:30
struct _follow_info follow_info_t
Aggregates all state for following and reassembling a single stream across both client and server dir...
Sliding window buffer tracking per-stream burst and bandwidth statistics.
Definition mcast_stream.h:34