summaryrefslogtreecommitdiff
path: root/Source/Kernel/VFS/VFS.ns.h
diff options
context:
space:
mode:
authorAlexis211 <alexis211@gmail.com>2009-09-13 18:27:42 +0200
committerAlexis211 <alexis211@gmail.com>2009-09-13 18:27:42 +0200
commit668bbfdaea7e8cba8233ebffe2a9d46a66e257cd (patch)
treec698b0f1a0baa98f6a2ec6f7aa0d3bd97021f376 /Source/Kernel/VFS/VFS.ns.h
parent708765621ede3541037fb822cc032b9feb2ea43e (diff)
downloadMelon-668bbfdaea7e8cba8233ebffe2a9d46a66e257cd.tar.gz
Melon-668bbfdaea7e8cba8233ebffe2a9d46a66e257cd.zip
We now can navigate in the VFS using the integrated shell.
Diffstat (limited to 'Source/Kernel/VFS/VFS.ns.h')
-rw-r--r--Source/Kernel/VFS/VFS.ns.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/Source/Kernel/VFS/VFS.ns.h b/Source/Kernel/VFS/VFS.ns.h
index 622d120..1021d7c 100644
--- a/Source/Kernel/VFS/VFS.ns.h
+++ b/Source/Kernel/VFS/VFS.ns.h
@@ -1,15 +1,22 @@
#ifndef DEF_VFS_NS_H
#define DEF_VFS_NS_H
-#include <VFS/FSNode.proto.h>
+#include <VFS/DirectoryNode.class.h>
#include <VFS/FileSystem.proto.h>
typedef FileSystem* (* mountcallback)(Partition* partition);
namespace VFS {
void registerMountCallback(mountcallback mcb);
- bool mount(Partition* partition);
- bool setRootNode(FSNode* root);
+ bool mount(Partition* partition, DirectoryNode mountpoint);
+ bool setRootNode(DirectoryNode* root);
+ DirectoryNode* getRootNode();
+
+ FSNode* find(const String& path, FSNode* start = 0);
+ FSNode* createFile(const String& path, FSNode* start = 0);
+ FSNode* createDirectory(const String& path, FSNode* start = 0);
+ bool remove(const String& path, FSNode* start = 0); //Returns false for non-empty directories
+ String path(FSNode* node); //Returns complete path for a node
}
#endif