diff options
author | karroffel <therzog@mail.de> | 2018-04-04 21:32:49 +0200 |
---|---|---|
committer | karroffel <therzog@mail.de> | 2018-04-05 00:06:33 +0200 |
commit | ad93d3e277e9cf8f9081b4a09d2832f0fbc95dcf (patch) | |
tree | 616ed30f1c20d13d854bcf07cc9f6f2386731af4 /modules/gdnative/nativescript/nativescript.h | |
parent | c5bb997a8f2d538cc89ac09ddd0ea8d5cf69df88 (diff) | |
download | redot-engine-ad93d3e277e9cf8f9081b4a09d2832f0fbc95dcf.tar.gz |
[NativeScript] added global type tag system
Diffstat (limited to 'modules/gdnative/nativescript/nativescript.h')
-rw-r--r-- | modules/gdnative/nativescript/nativescript.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/modules/gdnative/nativescript/nativescript.h b/modules/gdnative/nativescript/nativescript.h index 17b6ddc747..68a8126a32 100644 --- a/modules/gdnative/nativescript/nativescript.h +++ b/modules/gdnative/nativescript/nativescript.h @@ -36,6 +36,7 @@ #include "core/self_list.h" #include "io/resource_loader.h" #include "io/resource_saver.h" +#include "oa_hash_map.h" #include "ordered_hash_map.h" #include "os/thread_safe.h" #include "scene/main/node.h" @@ -240,6 +241,8 @@ private: Vector<Pair<bool, godot_instance_binding_functions> > binding_functions; Set<Vector<void *> *> binding_instances; + Map<int, HashMap<StringName, const void *> > global_type_tags; + public: // These two maps must only be touched on the main thread Map<String, Map<StringName, NativeScriptDesc> > library_classes; @@ -323,6 +326,9 @@ public: virtual void *alloc_instance_binding_data(Object *p_object); virtual void free_instance_binding_data(void *p_data); + + void set_global_type_tag(int p_idx, StringName p_class_name, const void *p_type_tag); + const void *get_global_type_tag(int p_idx, StringName p_class_name) const; }; inline NativeScriptDesc *NativeScript::get_script_desc() const { |