summaryrefslogtreecommitdiff
path: root/tools/scripts/makeargs.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/scripts/makeargs.py')
-rw-r--r--tools/scripts/makeargs.py88
1 files changed, 88 insertions, 0 deletions
diff --git a/tools/scripts/makeargs.py b/tools/scripts/makeargs.py
new file mode 100644
index 0000000000..6f7afa6328
--- /dev/null
+++ b/tools/scripts/makeargs.py
@@ -0,0 +1,88 @@
+
+text="""
+#define FUNC$numR(m_r,m_func,$argt)\\
+ virtual m_r m_func($argtp) { \\
+ if (Thread::get_caller_ID()!=server_thread) {\\
+ m_r ret;\\
+ command_queue.push_and_ret( visual_server, &VisualServer::m_func,$argp,&ret);\\
+ return ret;\\
+ } else {\\
+ return visual_server->m_func($argp);\\
+ }\\
+ }
+
+#define FUNC$numRC(m_r,m_func,$argt)\\
+ virtual m_r m_func($argtp) const { \\
+ if (Thread::get_caller_ID()!=server_thread) {\\
+ m_r ret;\\
+ command_queue.push_and_ret( visual_server, &VisualServer::m_func,$argp,&ret);\\
+ return ret;\\
+ } else {\\
+ return visual_server->m_func($argp);\\
+ }\\
+ }
+
+
+#define FUNC$numS(m_func,$argt)\\
+ virtual void m_func($argtp) { \\
+ if (Thread::get_caller_ID()!=server_thread) {\\
+ command_queue.push_and_sync( visual_server, &VisualServer::m_func,$argp);\\
+ } else {\\
+ visual_server->m_func($argp);\\
+ }\\
+ }
+
+#define FUNC$numSC(m_func,$argt)\\
+ virtual void m_func($argtp) const { \\
+ if (Thread::get_caller_ID()!=server_thread) {\\
+ command_queue.push_and_sync( visual_server, &VisualServer::m_func,$argp);\\
+ } else {\\
+ visual_server->m_func($argp);\\
+ }\\
+ }
+
+
+#define FUNC$num(m_func,$argt)\\
+ virtual void m_func($argtp) { \\
+ if (Thread::get_caller_ID()!=server_thread) {\\
+ command_queue.push( visual_server, &VisualServer::m_func,$argp);\\
+ } else {\\
+ visual_server->m_func($argp);\\
+ }\\
+ }
+
+#define FUNC$numC(m_func,$argt)\\
+ virtual void m_func($argtp) const { \\
+ if (Thread::get_caller_ID()!=server_thread) {\\
+ command_queue.push( visual_server, &VisualServer::m_func,$argp);\\
+ } else {\\
+ visual_server->m_func($argp);\\
+ }\\
+ }
+
+
+"""
+
+
+
+for i in range(1,8):
+
+ tp=""
+ p=""
+ t=""
+ for j in range(i):
+ if (j>0):
+ tp+=", "
+ p+=", "
+ t+=", "
+ tp +=("m_arg"+str(j+1)+" p"+str(j+1))
+ p+=("p"+str(j+1))
+ t+=("m_arg"+str(j+1))
+
+ t = text.replace("$argtp",tp).replace("$argp",p).replace("$argt",t).replace("$num",str(i))
+ print(t)
+
+
+
+
+