diff options
| author | Amlal El Mahrouss <amlal@el-mahrouss-logic.com> | 2024-03-15 20:37:20 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@el-mahrouss-logic.com> | 2024-03-15 20:39:36 +0100 |
| commit | 8f9b5e08f53f6e49a1f4c6b20e17c54298da9c44 (patch) | |
| tree | 6436b7deedeffc32cdc9e27c24a868ac896db89a /Private/ObjectKit | |
| parent | a87a74f9d56078ec55b3b73c81cfc422dca6554c (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.hxx | 18 |
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 |
