summaryrefslogtreecommitdiff
path: root/soltools/mkdepend/collectdircontent.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'soltools/mkdepend/collectdircontent.hxx')
-rw-r--r--soltools/mkdepend/collectdircontent.hxx58
1 files changed, 58 insertions, 0 deletions
diff --git a/soltools/mkdepend/collectdircontent.hxx b/soltools/mkdepend/collectdircontent.hxx
new file mode 100644
index 000000000000..1896df0c8bc7
--- /dev/null
+++ b/soltools/mkdepend/collectdircontent.hxx
@@ -0,0 +1,58 @@
+#ifndef COLLECTDIRCONTENT_H
+#define COLLECTDIRCONTENT_H
+
+#if defined __cplusplus
+
+#include <set>
+#include <map>
+#include <string>
+
+#if defined( WNT )
+#include <windows.h>
+#include <algorithm>
+#else
+#include <dirent.h>
+#endif // defined( WNT )
+
+#include <iostream>
+
+using namespace std;
+
+typedef set<string> DirContent;
+typedef map<string, DirContent> DirMap;
+typedef DirMap::value_type EntriesPair;
+typedef pair<string, string> PathFilePair;
+
+
+struct IncludesCollection {
+ private:
+ DirMap allIncludes;
+// bool search(string filePath);
+// bool add_dir(string dirPath);
+ PathFilePair split_path(const string& filePath);
+ void add_to_collection(const string& dirPath);
+
+ public:
+ bool exists(string filePath);
+};
+
+#else
+
+struct IncludesCollection;
+
+#endif
+
+#if defined __cplusplus
+extern "C" {
+#endif
+
+struct IncludesCollection * create_IncludesCollection(void);
+void delete_IncludesCollection(struct IncludesCollection *);
+
+int call_IncludesCollection_exists(struct IncludesCollection* m, const char* filePath);
+
+#if defined __cplusplus
+}
+#endif
+
+#endif // COLLECTDIRCONTENT_H