MCPcopy Create free account
hub / github.com/WarmUpTill/SceneSwitcher / preprocessScriptText

Function preprocessScriptText

plugins/scripting/utils/inline-script.cpp:253–356  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

251}
252
253static std::string preprocessScriptText(const std::string &text,
254 obs_script_lang language,
255 const std::string &id)
256{
257 const std::string footerPython =
258 R"(
259
260## AUTO GENERATED ##
261def advss_get_variable_value(name):
262 proc_handler = obs.obs_get_proc_handler()
263 data = obs.calldata_create()
264 obs.calldata_set_string(data, "name", name)
265 obs.proc_handler_call(proc_handler, "advss_get_variable_value", data)
266 success = obs.calldata_bool(data, "success")
267 if success is False:
268 obs.script_log(obs.LOG_WARNING, f'failed to get value for variable "{name}"')
269 obs.calldata_destroy(data)
270 return None
271 value = obs.calldata_string(data, "value")
272 obs.calldata_destroy(data)
273 return value
274
275def advss_set_variable_value(name, value):
276 proc_handler = obs.obs_get_proc_handler()
277 data = obs.calldata_create()
278 obs.calldata_set_string(data, "name", name)
279 obs.calldata_set_string(data, "value", value)
280 obs.proc_handler_call(proc_handler, "advss_set_variable_value", data)
281 success = obs.calldata_bool(data, "success")
282 if success is False:
283 obs.script_log(obs.LOG_WARNING, f'failed to set value for variable "{name}"')
284 obs.calldata_destroy(data)
285 return success
286
287def script_load(settings):
288 def run_wrapper(data):
289 id = obs.calldata_string(data, "id")
290 if id == ")" +
291 id +
292 R"(":
293 ret = run()
294 obs.calldata_set_bool(data, "result", ret)
295 sh = obs.obs_get_signal_handler()
296 obs.signal_handler_connect(sh, ")" +
297 std::string(signalName) +
298 R"(", run_wrapper)
299
300)";
301
302 const std::string footerLUA =
303 R"(
304
305-- AUTO GENERATED --
306function advss_get_variable_value(name)
307 local proc_handler = obs.obs_get_proc_handler()
308 local data = obs.calldata_create()
309 obs.calldata_set_string(data, "name", name)
310 obs.proc_handler_call(proc_handler, "advss_get_variable_value", data)

Callers 2

SetupFileMethod · 0.85
SetupInlineMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected