godot/misc/scripts/makeargs.py

83 lines
2.0 KiB
Python
Raw Normal View History

2014-02-10 09:10:30 +08:00
text = """
2014-02-10 09:10:30 +08:00
#define FUNC$numR(m_r,m_func,$argt)\\
virtual m_r m_func($argtp) { \\
if (Thread::get_caller_id()!=server_thread) {\\
2014-02-10 09:10:30 +08:00
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) {\\
2014-02-10 09:10:30 +08:00
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) {\\
2014-02-10 09:10:30 +08:00
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) {\\
2014-02-10 09:10:30 +08:00
command_queue.push_and_sync( visual_server, &VisualServer::m_func,$argp);\\
} else {\\
visual_server->m_func($argp);\\
}\\
}
2016-04-03 02:26:12 +08:00
2014-02-10 09:10:30 +08:00
#define FUNC$num(m_func,$argt)\\
virtual void m_func($argtp) { \\
if (Thread::get_caller_id()!=server_thread) {\\
2014-02-10 09:10:30 +08:00
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) {\\
2014-02-10 09:10:30 +08:00
command_queue.push( visual_server, &VisualServer::m_func,$argp);\\
} else {\\
visual_server->m_func($argp);\\
}\\
}
2016-04-03 02:26:12 +08:00
2014-02-10 09:10:30 +08:00
"""
for i in range(1, 8):
2014-02-10 09:10:30 +08:00
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)