New functions yaz_file_glob2, yaz_xml_include_glob
[yaz-moved-to-github.git] / include / yaz / file_glob.h
index 89baadd..36ea177 100644 (file)
@@ -1,5 +1,5 @@
 /* This file is part of the YAZ toolkit.
- * Copyright (C) 1995-2011 Index Data.
+ * Copyright (C) 1995-2013 Index Data.
  * All rights reserved.
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are met:
@@ -25,7 +25,7 @@
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-/** \file 
+/** \file
     \brief File globbing (ala POSIX glob, but simpler)
 */
 
@@ -40,6 +40,7 @@ YAZ_BEGIN_CDECL
 /** \brief file glob handle */
 typedef struct glob_res *yaz_glob_res_t;
 
+#define YAZ_FILE_GLOB_FAIL_NOTEXIST 1
 
 /** \brief perform glob
     \param pattern glob pattern file spec
@@ -50,9 +51,19 @@ typedef struct glob_res *yaz_glob_res_t;
 YAZ_EXPORT
 int yaz_file_glob(const char *pattern, yaz_glob_res_t *res);
 
+/** \brief perform glob (with flags)
+    \param pattern glob pattern file spec
+    \param res returned glob result
+    \param flags YAZ_FILE_GLOB_.. flags
+    \retval 0 OK
+    \retval -1 ERROR
+*/
+YAZ_EXPORT
+int yaz_file_glob2(const char *pattern, yaz_glob_res_t *res, unsigned flags);
+
 /** \brief release glob result
     \param res pointer to glob result
-    
+
     A value of *res == NULL is allowed. If *res != NULL, then
     *res is set to NULL
     */