/usr/include/sfi/sfifilecrawler.h is in libbse-dev 0.7.4-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 | /* SFI - Synthesis Fusion Kit Interface
* Copyright (C) 2003 Tim Janik
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* A copy of the GNU Lesser General Public License should ship along
* with this library; if not, see http://www.gnu.org/copyleft/.
*/
#ifndef __SFI_FILE_CRAWLER_H__
#define __SFI_FILE_CRAWLER_H__
#include <sfi/sfitypes.h>
#include <sfi/sfiring.h>
G_BEGIN_DECLS
typedef struct {
SfiRing *results; /* end user results */
/*< private >*/
gchar *cwd;
SfiRing *dpatterns; /* gchar*, directory patterns */
GFileTest ptest;
/* path crawler */
SfiRing *pdqueue; /* dir segments of current search dir */
GFileTest stest; /* final segment file test */
SfiRing *dlist; /* dir list */
/* dir crawler */
gpointer dhandle;
GPatternSpec *pspec; /* file pattern */
gchar *base_dir;
GFileTest ftest;
SfiRing *accu; /* readdir result */
} SfiFileCrawler;
SfiFileCrawler* sfi_file_crawler_new (void);
gchar* sfi_file_crawler_pop (SfiFileCrawler *self);
void sfi_file_crawler_set_cwd (SfiFileCrawler *self,
const gchar *cwd);
void sfi_file_crawler_add_search_path (SfiFileCrawler *self,
const gchar *pattern_paths,
const gchar *file_pattern);
void sfi_file_crawler_add_tests (SfiFileCrawler *self,
GFileTest tests);
void sfi_file_crawler_crawl (SfiFileCrawler *self);
gboolean sfi_file_crawler_needs_crawl (SfiFileCrawler *self);
void sfi_file_crawler_destroy (SfiFileCrawler *self);
SfiRing* sfi_file_crawler_list_files (const gchar *search_path,
const gchar *file_pattern,
GFileTest file_test);
gchar* sfi_path_get_filename (const gchar *filename,
const gchar *parentdir);
void sfi_make_dirpath (const gchar *dir);
void sfi_make_dirname_path (const gchar *filename);
/* --- file tests --- */
gboolean g_file_test_all (const gchar *filename,
GFileTest test);
/* --- implementations --- */
void _sfi_init_file_crawler (void);
G_END_DECLS
#endif /* __SFI_FILE_CRAWLER_H__ */
/* vim:set ts=8 sts=2 sw=2: */
|