diff options
author | reduz <reduzio@gmail.com> | 2021-06-19 12:58:49 -0300 |
---|---|---|
committer | reduz <reduzio@gmail.com> | 2021-06-25 17:32:45 -0300 |
commit | b1d15c51bc1ded928b266ffc06459dd8b2046eb4 (patch) | |
tree | 176b9bb1217200cafec3613df6cf8369dcd73dd4 /core/object/class_db.h | |
parent | c8444c3ee078e33c33287cf879aa5daecb962a80 (diff) |
Implement native extension system
* Deprecates GDNative in favor of a simpler, lower level interface.
* New extension system allows registering core engine classes.
* Simple header interface in gdnative_interace.h
Diffstat (limited to 'core/object/class_db.h')
-rw-r--r-- | core/object/class_db.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/core/object/class_db.h b/core/object/class_db.h index a4af535149..af528bfde7 100644 --- a/core/object/class_db.h +++ b/core/object/class_db.h @@ -204,6 +204,7 @@ public: } static void register_extension_class(ObjectNativeExtension *p_extension); + static void unregister_extension_class(const StringName &p_class); template <class T> static Object *_create_ptr_func() { @@ -232,7 +233,8 @@ public: static bool is_parent_class(const StringName &p_class, const StringName &p_inherits); static bool can_instantiate(const StringName &p_class); static Object *instantiate(const StringName &p_class); - static void instance_get_native_extension_data(ObjectNativeExtension **r_extension, void **r_extension_instance); + static void instance_get_native_extension_data(ObjectNativeExtension **r_extension, GDExtensionClassInstancePtr *r_extension_instance); + static APIType get_api_type(const StringName &p_class); static uint64_t get_api_hash(APIType p_api); |