summaryrefslogtreecommitdiff
path: root/odb/odb/profile.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'odb/odb/profile.hxx')
-rw-r--r--odb/odb/profile.hxx39
1 files changed, 39 insertions, 0 deletions
diff --git a/odb/odb/profile.hxx b/odb/odb/profile.hxx
new file mode 100644
index 0000000..b6e8e53
--- /dev/null
+++ b/odb/odb/profile.hxx
@@ -0,0 +1,39 @@
+// file : odb/profile.hxx
+// license : GNU GPL v3; see accompanying LICENSE file
+
+#ifndef ODB_PROFILE_HXX
+#define ODB_PROFILE_HXX
+
+#include <set>
+#include <vector>
+#include <string>
+
+#include <libcutl/fs/path.hxx>
+
+#include <odb/option-types.hxx>
+
+struct profile_data
+{
+ typedef cutl::fs::path path;
+ typedef std::vector<path> paths;
+
+ profile_data (paths const& p, database d, char const* n)
+ : search_paths (p), db (d), name (n)
+ {
+ }
+
+ paths const& search_paths;
+ database db;
+ char const* name;
+ std::set<path> loaded;
+};
+
+struct profile_failure {};
+
+std::string
+profile_search (char const* profile, void* arg);
+
+std::string
+profile_search_ignore (char const* profile, void* arg);
+
+#endif // ODB_PROFILE_HXX