2 * Definitions for routines for file sets.
4 * Wireshark - Network traffic analyzer
5 * By Gerald Combs <gerald@wireshark.org>
6 * Copyright 1998 Gerald Combs
8 * SPDX-License-Identifier: GPL-2.0-or-later
16 #endif /* __cplusplus */
18 typedef struct _fileset_entry {
19 char *fullname; /* File name with path (g_strdup'ed) */
20 char *name; /* File name without path (g_strdup'ed) */
21 time_t ctime; /* create time */
22 time_t mtime; /* last modified time */
23 gint64 size; /* size of file in bytes */
24 gboolean current; /* is this the currently loaded file? */
28 /* helper: is this a probable file of a file set (does the naming pattern match)? */
29 extern gboolean fileset_filename_match_pattern(const char *fname);
31 extern void fileset_add_dir(const char *fname, void *window);
33 extern void fileset_delete(void);
35 /* get the current directory name */
36 extern const char *fileset_get_dirname(void);
38 extern fileset_entry *fileset_get_next(void);
39 extern fileset_entry *fileset_get_previous(void);
42 * Add an entry to our dialog / window. Called by fileset_update_dlg.
43 * Must be implemented in the UI.
45 * @param entry The new fileset entry.
46 * @param window Window / dialog reference provided by the UI code.
48 extern void fileset_dlg_add_file(fileset_entry *entry, void *window);
51 * Notify our dialog / window that we're about to add files. Called by fileset_update_dlg.
52 * Must be implemented in the UI.
54 * @param window Window / dialog reference provided by the UI code.
56 extern void fileset_dlg_begin_add_file(void *window);
59 * Notify our dialog / window that we're done adding files. Called by fileset_update_dlg.
60 * Must be implemented in the UI.
62 * @param window Window / dialog reference provided by the UI code.
64 extern void fileset_dlg_end_add_file(void *window);
66 extern void fileset_update_dlg(void *window);
68 extern void fileset_update_file(const char *path);
72 #endif /* __cplusplus */
74 #endif /* __FILESET_H__ */
77 * Editor modelines - http://www.wireshark.org/tools/modelines.html
82 * indent-tabs-mode: nil
85 * vi: set shiftwidth=4 tabstop=8 expandtab:
86 * :indentSize=4:tabSize=8:noTabs=true: