summaryrefslogtreecommitdiffhomepage
path: root/Private/FSKit
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-03-31 14:30:39 +0200
committerAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-03-31 14:30:39 +0200
commit21b5569ce53892167fb44867b4319ad528602e1e (patch)
treeb63fdf4184b47f72bf0ff1160dafce9e53dc238c /Private/FSKit
parent48ed22614592c30bd1dc1f98f3988d05454e6c3b (diff)
Kernel:FSKit: Worked on filesystem indexing and new fs_ calls.
- Document fs_newfs_write, fs_newfs_read. - Add fs_index_file. - Remove custom partition, EPM now says that it must be zeroed out. Signed-off-by: Amlal El Mahrouss <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'Private/FSKit')
-rw-r--r--Private/FSKit/IndexableProperty.hxx15
1 files changed, 12 insertions, 3 deletions
diff --git a/Private/FSKit/IndexableProperty.hxx b/Private/FSKit/IndexableProperty.hxx
index ab034bc6..1a7925fe 100644
--- a/Private/FSKit/IndexableProperty.hxx
+++ b/Private/FSKit/IndexableProperty.hxx
@@ -10,14 +10,15 @@
#include <CompilerKit/CompilerKit.hxx>
#include <KernelKit/DriveManager.hxx>
+#define kIndexerNodeNameLength 256
+#define kIndexerClaimed 0xCF
+
namespace NewOS {
namespace Indexer {
struct IndexProperty final {
public:
Char Drive[kDriveNameLen];
- Char Path[256];
- Char From[256];
- Char To[256];
+ Char Path[kIndexerNodeNameLength];
};
class IndexableProperty final : public Property {
@@ -34,10 +35,18 @@ class IndexableProperty final : public Property {
public:
void AddFlag(Int16 flag);
void RemoveFlag(Int16 flag);
+ Int16 HasFlag(Int16 flag);
private:
IndexProperty fIndex;
UInt32 fFlags;
};
+
+/// @brief Index a file into the indexer instance.
+/// @param filename path
+/// @param filenameLen used bytes in path.
+/// @param indexer the filesystem indexer.
+/// @return none.
+Void fs_index_file(const Char* filename, SizeT filenameLen, IndexableProperty& indexer);
} // namespace Indexer
} // namespace NewOS