diff options
| -rw-r--r-- | SCIKit/SCIBinaryInterface.cxx (renamed from SCIKit/SCIObjRt.cxx) | 3 | ||||
| -rw-r--r-- | SCIKit/rtl.internal.inl | 27 |
2 files changed, 19 insertions, 11 deletions
diff --git a/SCIKit/SCIObjRt.cxx b/SCIKit/SCIBinaryInterface.cxx index c8c7300e..02766870 100644 --- a/SCIKit/SCIObjRt.cxx +++ b/SCIKit/SCIBinaryInterface.cxx @@ -4,5 +4,4 @@ ------------------------------------------- */
-#include <SCIKit/SCIBase.hxx>
-//#include <SCIKit/SCIObjRt.hxx>
\ No newline at end of file +#include <SCIKit/SCIBase.hxx>
\ No newline at end of file diff --git a/SCIKit/rtl.internal.inl b/SCIKit/rtl.internal.inl index f22bc834..b4e8e7dd 100644 --- a/SCIKit/rtl.internal.inl +++ b/SCIKit/rtl.internal.inl @@ -2,20 +2,29 @@ Copyright ZKA Technologies.
-File: rt.internal.inl.
-Purpose: Internal file for SCM.
+File: rt.internal.inl
+Purpose: Base code of SCM.
------------------------------------------- */
+/// @internal
+
+#ifndef __ZECC__
+#define object class
+#define protocol class
+#define clsid(X) __attribute__((uuid(X)))
+
+#warning ! you may be using the clang version of the newos kit, please be cautious that some thing mayn't be present. !
+#endif // !__ZECC__
// Interfaces are divided between classes.
// So that they aren't too big.
-class UnknownInterface; // Refrenced from an IDB entry.
+protocol UnknownInterface; // Refrenced from an IDB entry.
class UnknownUCLSID; // From the IDB, the constructor of the object, e.g: TextUCLSID.
-class UUID;
+object UUID;
-class __attribute__((uuid("d7c144b6-0792-44b8-b06b-02b227b547df"))) UnknownInterface
+protocol clsid("d7c144b6-0792-44b8-b06b-02b227b547df") UnknownInterface
{
public:
explicit UnknownInterface() = default;
@@ -30,23 +39,23 @@ public: virtual VoidPtr QueryInterface(UUID* p_uuid) = 0;
};
-/// @brief Allocate new SCM class.
+/// @brief Allocate new SCM object.
/// @tparam TCLS
/// @tparam UCLSID
/// @param uclsidOfCls
/// @return
template <typename TCLS, typename UCLSID, typename... Args>
-inline TCLS* RtlQueryInterface(UCLSID* uclsidOfCls, Args&&... args)
+inline TCLS* ScmQueryInterface(UCLSID* uclsidOfCls, Args&&... args)
{
return uclsidOfCls->QueryInterfaceWithArgs(args...);
}
-/// @brief Release SCM class.
+/// @brief Release SCM object.
/// @tparam TCLS
/// @param cls
/// @return
template <typename TCLS>
-inline SInt32 RtlReleaseClass(TCLS* cls)
+inline SInt32 ScmReleaseClass(TCLS* cls)
{
if (!cls)
return -1;
|
