From a170c8d8f69f8682a17869a809aaede036fb0254 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Mon, 4 May 2020 16:59:44 +0200 Subject: Move match_filename() to gui_project --- src/gui_project.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'src/gui_project.c') diff --git a/src/gui_project.c b/src/gui_project.c index 4effc603..fcfce995 100644 --- a/src/gui_project.c +++ b/src/gui_project.c @@ -89,6 +89,32 @@ enum match_type_id decode_matchtype(const char *type_id) } +int match_filename(const char *fn, enum match_type_id mt) +{ + const char *ext = NULL; + const char *ext2 = NULL; + + if ( mt == MATCH_EVERYTHING ) return 1; + + ext = filename_extension(fn, &ext2); + if ( ext == NULL ) return 0; + + if ( mt == MATCH_CHEETAH_LCLS_H5 ) { + return ((strcmp(ext, ".h5")==0) + && (strncmp(fn, "LCLS", 4)==0)); + } + if ( mt == MATCH_CHEETAH_CXI ) return strcmp(ext, ".cxi")==0; + if ( mt == MATCH_CBF ) return strcmp(ext, ".cbf")==0; + if ( mt == MATCH_CBFGZ ) { + if ( ext2 != NULL ) { + return strcmp(ext2, ".cbf.gz")==0; + } + } + + return 0; +} + + static void handle_var(const char *key, const char *val, struct crystfelproject *proj) { -- cgit v1.2.3