summaryrefslogtreecommitdiffhomepage
path: root/dev/SCI
diff options
context:
space:
mode:
authorAmlal <amlal@el-mahrouss-logic.com>2024-09-06 09:38:00 +0200
committerAmlal <amlal@el-mahrouss-logic.com>2024-09-06 09:38:00 +0200
commit507b3a76de36e41bdfd1c14d94a397990b26a423 (patch)
treee087051b51d36828fbca98d9e9e74cb1381a4def /dev/SCI
parent98f504c442b1a0f769e2f20e4fb251813dd5dd67 (diff)
[ IMP ] A first set of software patches regarding the OS kernel and it's components.
Signed-off-by: Amlal <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'dev/SCI')
-rw-r--r--dev/SCI/makefile2
-rw-r--r--dev/SCI/sci_base.hxx30
-rw-r--r--dev/SCI/scm-design.drawio2
-rw-r--r--dev/SCI/xpcom_core.hxx6
-rw-r--r--dev/SCI/xpcom_sms.idl2
5 files changed, 23 insertions, 19 deletions
diff --git a/dev/SCI/makefile b/dev/SCI/makefile
index 4193cd70..05593216 100644
--- a/dev/SCI/makefile
+++ b/dev/SCI/makefile
@@ -1,6 +1,6 @@
######################
# (C) ZKA
-# SCM/SCI kit makefile.
+# XPCOM/SCI kit makefile.
######################
CC=g++
diff --git a/dev/SCI/sci_base.hxx b/dev/SCI/sci_base.hxx
index 0cff8f0d..7f7565de 100644
--- a/dev/SCI/sci_base.hxx
+++ b/dev/SCI/sci_base.hxx
@@ -43,7 +43,7 @@ class IUnknown; // Refrenced from an IDB entry.
class UnknownUCLSID; // From the IDB, the constructor of the object, e.g: WordUCLSID.
class UUID;
-/// @brief Allocate new SCM class.
+/// @brief Allocate new XPCOM class.
/// @tparam TCLS
/// @tparam UCLSID
/// @param uclsidOfCls
@@ -54,7 +54,7 @@ TCLS* XPCOMQueryInterface(UCLSID uclsidOfCls, Args... args);
template <typename TCLS>
SInt32 XPCOMReleaseClass(TCLS** cls);
-/// @brief Release SCM class.
+/// @brief Release XPCOM class.
/// @tparam TCLS
/// @param cls
/// @return
@@ -157,13 +157,13 @@ IMPORT_C UInt64 IoSeekFile(_Input ZKAObject file_desc, UInt64 file_offset);
/// @brief Installs the Thread Information Block and Global Information Block inside the current process.
/// @param void.
/// @return > 0 error ocurred or already present, = 0 success.
-IMPORT_C UInt32 TlsInstallIB(UInt0);
+IMPORT_C UInt32 TlsInstall(UInt0);
// ------------------------------------------------------------------------
-// SCM API.
+// XPCOM API.
// ------------------------------------------------------------------------
-/// @brief Allocate new SCM object.
+/// @brief Allocate new XPCOM object.
/// @tparam TCLS the class type.
/// @tparam UCLSID UCLS factory class type.
/// @param uclsidOfCls UCLS factory class
@@ -171,20 +171,20 @@ IMPORT_C UInt32 TlsInstallIB(UInt0);
template <typename TCLS, typename UCLSID, typename... Args>
TCLS* XPCOMQueryInterface(_Input UCLSID* uclsidOfCls, _Input Args&&... args);
-/// @brief Release SCM object.
+/// @brief Release XPCOM object.
/// @tparam TCLS the class type.
/// @param cls the class to release.
/// @return status code.
template <typename TCLS>
SInt32 XPCOMReleaseClass(_Input TCLS* cls);
-/// @brief Creates an SCM instance in the process.
-/// @param handle_instance the SCM handle.
-/// @param flags the SCM flags.
+/// @brief Creates an XPCOM instance in the process.
+/// @param handle_instance the XPCOM handle.
+/// @param flags the XPCOM flags.
IMPORT_C SInt32 XPCOMCreateInstance(_Input UInt32 flags, _Output ZKAObject* handle_instance);
-/// @brief Destroys an SCM instance of the process.
-/// @param handle_instance the SCM handle.
+/// @brief Destroys an XPCOM instance of the process.
+/// @param handle_instance the XPCOM handle.
IMPORT_C UInt0 XPCOMDestroyInstance(_Input ZKAObject handle_instance);
// ------------------------------------------------------------------------
@@ -218,12 +218,16 @@ IMPORT_C SInt32 ErrGetLastError(UInt0);
// Threading API.
// ------------------------------------------------------------------------
-IMPORT_C UInt0 ThrExitCurrentThread(SInt32 exit_code);
-IMPORT_C UInt0 ThrExitMainThread(SInt32 exit_code);
+IMPORT_C UInt0 ThrExitCurrentThread(_Input SInt32 exit_code);
+IMPORT_C UInt0 ThrExitMainThread(_Input SInt32 exit_code);
IMPORT_C UInt0 ThrExitYieldThread(UInt0);
IMPORT_C UInt0 ThrExitJoinThread(UInt0);
IMPORT_C UInt0 ThrExitDetachThread(UInt0);
+// ------------------------------------------------------------------------
+// Disk Management API.
+// ------------------------------------------------------------------------
+
#endif // ifndef __SCI_BASE_HXX__
diff --git a/dev/SCI/scm-design.drawio b/dev/SCI/scm-design.drawio
index be77883c..22bcace6 100644
--- a/dev/SCI/scm-design.drawio
+++ b/dev/SCI/scm-design.drawio
@@ -19,7 +19,7 @@
<mxCell id="eRehIIeIVOPW1y23kRkx-8" value="Program #2&lt;div&gt;Is a web browser, it uses an HTML parser component.&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;" parent="1" vertex="1">
<mxGeometry x="253" y="570" width="120" height="60" as="geometry"/>
</mxCell>
- <mxCell id="eRehIIeIVOPW1y23kRkx-10" value="&lt;h1 style=&quot;margin-top: 0px;&quot;&gt;System Component/Call Model/Interface&lt;/h1&gt;&lt;p&gt;SCM is a standardized way of sharing code within DLLs in NewOS.&lt;/p&gt;&lt;p&gt;All classes are based upon&amp;nbsp;&lt;span style=&quot;color: rgb(78, 201, 176); background-color: rgb(31, 31, 31); font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;IUnknown&lt;/span&gt;&lt;/p&gt;&lt;p&gt;It is also used to register and call code using&amp;nbsp;&lt;span style=&quot;color: rgb(78, 201, 176); background-color: rgb(31, 31, 31); font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;IEventListener&lt;/span&gt;&lt;/p&gt;" style="text;html=1;whiteSpace=wrap;overflow=hidden;rounded=0;" parent="1" vertex="1">
+ <mxCell id="eRehIIeIVOPW1y23kRkx-10" value="&lt;h1 style=&quot;margin-top: 0px;&quot;&gt;System Component/Call Model/Interface&lt;/h1&gt;&lt;p&gt;XPCOM is a standardized way of sharing code within DLLs in NewOS.&lt;/p&gt;&lt;p&gt;All classes are based upon&amp;nbsp;&lt;span style=&quot;color: rgb(78, 201, 176); background-color: rgb(31, 31, 31); font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;IUnknown&lt;/span&gt;&lt;/p&gt;&lt;p&gt;It is also used to register and call code using&amp;nbsp;&lt;span style=&quot;color: rgb(78, 201, 176); background-color: rgb(31, 31, 31); font-family: Consolas, &amp;quot;Courier New&amp;quot;, monospace; font-size: 14px;&quot;&gt;IEventListener&lt;/span&gt;&lt;/p&gt;" style="text;html=1;whiteSpace=wrap;overflow=hidden;rounded=0;" parent="1" vertex="1">
<mxGeometry x="450" y="240" width="320" height="240" as="geometry"/>
</mxCell>
</root>
diff --git a/dev/SCI/xpcom_core.hxx b/dev/SCI/xpcom_core.hxx
index 3183d0e4..63bcf403 100644
--- a/dev/SCI/xpcom_core.hxx
+++ b/dev/SCI/xpcom_core.hxx
@@ -3,7 +3,7 @@
Copyright ZKA Technologies.
File: rt.internal.inl
-Purpose: Base code of SCM.
+Purpose: Base code of XPCOM.
------------------------------------------- */
@@ -37,7 +37,7 @@ public:
virtual VoidPtr QueryInterface(UUID * p_uuid) = 0;
};
-/// @brief Allocate new SCM object.
+/// @brief Allocate new XPCOM object.
/// @tparam TCLS the class type.
/// @tparam UCLSID UCLS factory class type.
/// @param uclsidOfCls UCLS factory class
@@ -49,7 +49,7 @@ inline TCLS* XPCOMQueryInterface(UCLSID* uclsidOfCls, Args&&... args)
return uclsidOfCls->QueryInterfaceWithArgs(args...);
}
-/// @brief Release SCM object.
+/// @brief Release XPCOM object.
/// @tparam TCLS the class type.
/// @param cls the class to release.
/// @return status code.
diff --git a/dev/SCI/xpcom_sms.idl b/dev/SCI/xpcom_sms.idl
index de77d99e..ae37d285 100644
--- a/dev/SCI/xpcom_sms.idl
+++ b/dev/SCI/xpcom_sms.idl
@@ -3,7 +3,7 @@
Copyright ZKA Technologies.
File: rt.internal.inl
-Purpose: Base code of SCM.
+Purpose: Base code of XPCOM.
------------------------------------------- */