From c9b9dd690bac14b7402283e178d4c3b00f200d41 Mon Sep 17 00:00:00 2001 From: Guy Harris Date: Wed, 27 Apr 2011 02:54:44 +0000 Subject: Create a new frame_data_sequence data type; it represents a dense sequence of frame_data structures, indexed by the frame number. Extract the relevant bits of the capture_file data structure and move them to the frame_data_sequence, and move the relevant code from cfile.c and tweak it to handle frame_data_sequence structures. Have a possibly-null pointer to a frame_data_sequence structure in the capture_file structure; if it's null, we aren't keeping a sequence of frame_data structures (we don't keep that sequence when we're doing one-pass processing in TShark). Nothing in libwireshark should care about a capture_file structure; get rid of some unnecessary includes of cfile.h. svn path=/trunk/; revision=36881 --- cfile.h | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) (limited to 'cfile.h') diff --git a/cfile.h b/cfile.h index a14accc9e1..83d2309267 100644 --- a/cfile.h +++ b/cfile.h @@ -25,6 +25,8 @@ #ifndef __CFILE_H__ #define __CFILE_H__ +#include "frame_data_sequence.h" + /* Current state of file. */ typedef enum { FILE_CLOSED, /* No file open */ @@ -98,7 +100,7 @@ typedef struct _capture_file { union wtap_pseudo_header pseudo_header; /* Packet pseudo_header */ guint8 pd[WTAP_MAX_PACKET_SIZE]; /* Packet data */ /* frames */ - void *ptree_root; /* Pointer to the root node */ + frame_data_sequence *frames; /* Sequence of frames, if we're keeping that information */ guint32 first_displayed; /* Frame number of first frame displayed */ guint32 last_displayed; /* Frame number of last frame displayed */ column_info cinfo; /* Column formatting information */ @@ -110,18 +112,4 @@ typedef struct _capture_file { extern void cap_file_init(capture_file *cf); -extern frame_data *cap_file_add_fdata(capture_file *cf, frame_data *fdata); - -/* - * Find the frame_data for the specified frame number. - * Do some caching to make this work reasonably fast for - * forward and backward sequential passes through the packets. - */ -extern frame_data *cap_file_find_fdata(capture_file *cf, guint32 num); - -/* - * Free up all the frame information for a capture file. - */ -extern void cap_file_free_frames(capture_file *cf); - #endif /* cfile.h */ -- cgit v1.2.3