diff options
Diffstat (limited to 'tools/scripts/makeargs.py')
-rw-r--r-- | tools/scripts/makeargs.py | 88 |
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) + + + + + |