Add a timeline view for packets, with the timing data used to generate the display
authorSimon Barber <simon.barber@meraki.net>
Thu, 6 Apr 2017 21:45:33 +0000 (17:45 -0400)
committerMichael Mann <mmann78@netscape.net>
Mon, 5 Jun 2017 11:25:51 +0000 (11:25 +0000)
commit21305e9835d40dbd812514471397fb1de3a0740c
treefdbd995627e1e7cf059a9bdc3b1d2b8dc7278beb
parentd0865fd619454a9ac06b1c7d287dc438aff50bb0
Add a timeline view for packets, with the timing data used to generate the display
taken from the timing analysis done in the wlan_radio dissector. QT only.

The timeline background is light gray, white for packets displayed in the packetlist,
and blue for the currently selected packet. Packets are coloured according to the
colouring rules foreground colour. The timeline can be zoomed with controls on the
toolbar.

At higher zoom levels the duration (NAV) field is plotted as a horizontal line to the
right of a packet.

The height of a packet in the timeline is proportional to the RSSI.

The bottom half of the packet is only shown if it matches the display filter.

Todo:
Auto detect TSF timing reference point (start/end of packet)
Add a scrollbar
Add a ruler showing time
Improve handling of focus.
Do not display NAV for packets with bad FCS.
Show related packets graphically
Different Y axis modes
- bandwidth/channel use display
- different transmitters per line
- background color from coloring rules
Live capture support

Change-Id: Ic31fffb0d6854966361ade7abb5c0be50db9a247
Reviewed-on: https://code.wireshark.org/review/20043
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
13 files changed:
epan/dissectors/Makefile.am
epan/dissectors/packet-ieee80211-radio.c
epan/dissectors/packet-ieee80211-radio.h [new file with mode: 0644]
ui/qt/CMakeLists.txt
ui/qt/Makefile.am
ui/qt/main_window.cpp
ui/qt/main_window.h
ui/qt/main_window.ui
ui/qt/main_window_slots.cpp
ui/qt/packet_list_model.cpp
ui/qt/packet_list_model.h
ui/qt/wireless_timeline.cpp [new file with mode: 0644]
ui/qt/wireless_timeline.h [new file with mode: 0644]