packet-dcerpc: pass dcerpc_info to dcerpc_dissect_fnct_blk_t
[metze/wireshark/wip.git] / summary.h
1 /* summary.h
2  * Definitions for capture file summary data
3  *
4  * Wireshark - Network traffic analyzer
5  * By Gerald Combs <gerald@wireshark.org>
6  * Copyright 1998 Gerald Combs
7  *
8  * This program is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU General Public License
10  * as published by the Free Software Foundation; either version 2
11  * of the License, or (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
21  */
22
23 #ifndef __SUMMARY_H__
24 #define __SUMMARY_H__
25
26 #ifdef HAVE_LIBPCAP
27 #include "ui/capture.h"
28 #endif
29
30 #ifdef __cplusplus
31 extern "C" {
32 #endif /* __cplusplus */
33
34 typedef struct iface_options_tag {
35   char     *name;
36   char     *descr;
37   char     *cfilter;
38   char     *isb_comment;
39   guint64   drops;                 /**< number of packet drops */
40   gboolean  drops_known;           /**< TRUE if number of packet drops is known */
41   gboolean  has_snap;              /**< TRUE if maximum capture packet length is known */
42   int       snap;                  /**< Maximum captured packet length */
43   int       encap_type;            /**< wiretap encapsulation type */
44 } iface_options;
45
46 typedef struct _summary_tally {
47   guint64      bytes;              /**< total bytes */
48   double       start_time;         /**< seconds, with msec resolution */
49   double       stop_time;          /**< seconds, with msec resolution */
50   double       elapsed_time;       /**< seconds, with msec resolution,
51                                      includes time before first packet
52                                      and after last packet */
53   guint32      marked_count;       /**< number of marked packets */
54   guint32      marked_count_ts;    /**< number of time-stamped marked packets */
55   guint64      marked_bytes;       /**< total bytes in the marked packets */
56   double       marked_start;       /**< time in seconds, with msec resolution */
57   double       marked_stop;        /**< time in seconds, with msec resolution */
58   guint32      ignored_count;      /**< number of ignored packets */
59   guint32      packet_count;       /**< total number of packets in trace */
60   guint32      packet_count_ts;    /**< total number of time-stamped packets in trace */
61   guint32      filtered_count;     /**< number of filtered packets */
62   guint32      filtered_count_ts;  /**< number of time-stamped filtered packets */
63   guint64      filtered_bytes;     /**< total bytes in the filtered packets */
64   double       filtered_start;     /**< time in seconds, with msec resolution */
65   double       filtered_stop;      /**< time in seconds, with msec resolution */
66   const char  *filename;
67   gint64       file_length;        /**< file length in bytes */
68   int          file_type;          /**< wiretap file type */
69   int          iscompressed;       /**< TRUE if file is compressed */
70   int          file_encap_type;    /**< wiretap encapsulation type for file */
71   GArray      *packet_encap_types; /**< wiretap encapsulation types for packets */
72   gboolean     has_snap;           /**< TRUE if maximum capture packet length is known */
73   int          snap;               /**< Maximum captured packet length */
74   gboolean     drops_known;        /**< TRUE if number of packet drops is known */
75   guint64      drops;              /**< number of packet drops */
76   const char  *dfilter;            /**< display filter */
77   gboolean     is_tempfile;
78   /* from SHB, use summary_fill_shb_inf() to get values */
79   gchar       *opt_comment;        /**< comment from SHB block */
80   gchar       *shb_hardware;       /**< Capture HW from SHB block */
81   gchar       *shb_os;             /**< The OS the capture was made on from SHB block */
82   const gchar *shb_user_appl;      /**< The application that made the capture from SHB block */
83   /* capture related, use summary_fill_in_capture() to get values */
84   GArray      *ifaces;
85   gboolean     legacy;
86 } summary_tally;
87
88 extern void
89 summary_fill_in(capture_file *cf, summary_tally *st);
90
91 #ifdef HAVE_LIBPCAP
92 extern void
93 summary_fill_in_capture(capture_file *cf, capture_options *capture_opts, summary_tally *st);
94 #endif
95
96 #ifdef __cplusplus
97 }
98 #endif /* __cplusplus */
99
100 #endif /* summary.h */
101
102 /*
103  * Editor modelines  -  http://www.wireshark.org/tools/modelines.html
104  *
105  * Local Variables:
106  * c-basic-offset: 2
107  * tab-width: 8
108  * indent-tabs-mode: nil
109  * End:
110  *
111  * vi: set shiftwidth=2 tabstop=8 expandtab:
112  * :indentSize=2:tabSize=8:noTabs=true:
113  */