summaryrefslogtreecommitdiffhomepage
path: root/Private/ObjectKit
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-03-15 20:37:20 +0100
committerAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-03-15 20:39:36 +0100
commit8f9b5e08f53f6e49a1f4c6b20e17c54298da9c44 (patch)
tree6436b7deedeffc32cdc9e27c24a868ac896db89a /Private/ObjectKit
parenta87a74f9d56078ec55b3b73c81cfc422dca6554c (diff)
HCR-14: HCFS and NewFS: Reworked some parts of it, will also work on
exposing objects for it. - Expsoing objects to the API is important so that the developer can take advantage of these filesystem specific APIs. - Update XRN UUID formatting. Signed-off-by: Amlal El Mahrouss <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'Private/ObjectKit')
-rw-r--r--Private/ObjectKit/Object.hxx18
1 files changed, 13 insertions, 5 deletions
diff --git a/Private/ObjectKit/Object.hxx b/Private/ObjectKit/Object.hxx
index 1cb9e084..af228163 100644
--- a/Private/ObjectKit/Object.hxx
+++ b/Private/ObjectKit/Object.hxx
@@ -7,13 +7,21 @@
#pragma once
#include <NewKit/Defines.hpp>
+#include <CFKit/GUIDWrapper.hpp>
+
+#define kObjectGlobalNamespaceSystem "HCORE_ROOT\\"
+#define kObjectGlobalNamespaceUser "HCORE_USER_ROOT\\"
namespace HCore {
-/// \brief Object Manager handle.
-typedef struct Object {
- Void(*Release)(Void);
- Void(*Invoke)(Void);
- Void(*QueryInterface)(Void);
+/// \brief Object handle.
+typedef struct Object final {
+ WideChar ObjectName[255];
+ Int32 ObjectType;
+ WideChar ObjectNamespace[255];
+
+ Void(*Release)(struct Object* Self);
+ Void(*Invoke)(struct Object* Self, Int32 Sel, ...);
+ Void(*QueryInterface)(VoidPtr* Dst, SizeT SzDst, XRN::GUIDSequence GuidOf);
} Ojbect, *ObjectPtr;
} // namespace HCore