summaryrefslogtreecommitdiff
path: root/core/object/class_db.h
diff options
context:
space:
mode:
authorreduz <reduzio@gmail.com>2021-06-19 12:58:49 -0300
committerreduz <reduzio@gmail.com>2021-06-25 17:32:45 -0300
commitb1d15c51bc1ded928b266ffc06459dd8b2046eb4 (patch)
tree176b9bb1217200cafec3613df6cf8369dcd73dd4 /core/object/class_db.h
parentc8444c3ee078e33c33287cf879aa5daecb962a80 (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.h4
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);