summaryrefslogtreecommitdiffstats
path: root/modules/dlscript/godot/godot_rid.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2017-04-04 00:25:03 +0200
committerGitHub <noreply@github.com>2017-04-04 00:25:03 +0200
commit46bc14e66fe90430f1d74cdab6cca6acb5b2a3f6 (patch)
tree6d761531804ce9bb8e78b297598e06bea57dbe7b /modules/dlscript/godot/godot_rid.cpp
parent57badfd1df3a554b7f47793e73a887874e5ca2b1 (diff)
parentfd553087867187220d4f6b8217854dd8e9be2667 (diff)
downloadredot-engine-46bc14e66fe90430f1d74cdab6cca6acb5b2a3f6.tar.gz
Merge pull request #8246 from GodotNativeTools/dlscript-module
DLScript module
Diffstat (limited to 'modules/dlscript/godot/godot_rid.cpp')
-rw-r--r--modules/dlscript/godot/godot_rid.cpp36
1 files changed, 36 insertions, 0 deletions
diff --git a/modules/dlscript/godot/godot_rid.cpp b/modules/dlscript/godot/godot_rid.cpp
new file mode 100644
index 0000000000..a36a2e64a3
--- /dev/null
+++ b/modules/dlscript/godot/godot_rid.cpp
@@ -0,0 +1,36 @@
+#include "godot_rid.h"
+
+#include "object.h"
+#include "resource.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void _rid_api_anchor() {
+}
+
+void GDAPI godot_rid_new(godot_rid *p_rid, godot_object *p_from) {
+
+ Resource *res_from = ((Object *)p_from)->cast_to<Resource>();
+
+ RID *rid = (RID *)p_rid;
+ memnew_placement(rid, RID);
+
+ if (res_from) {
+ *rid = RID(res_from->get_rid());
+ }
+}
+
+uint32_t GDAPI godot_rid_get_rid(const godot_rid *p_rid) {
+ RID *rid = (RID *)p_rid;
+ return rid->get_id();
+}
+
+void GDAPI godot_rid_destroy(godot_rid *p_rid) {
+ ((RID *)p_rid)->~RID();
+}
+
+#ifdef __cplusplus
+}
+#endif