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

Function buildSceneConditionData

lib/utils/first-run-wizard-sequence.cpp:36–62  ·  view source on GitHub ↗

Builds the obs_data blob for a "current scene == sceneName for at least triggerDuration" condition, matching MacroConditionScene::Save(). { "segmentSettings": { "enabled": true, "version": 2 }, "id": "scene", "logic": 0, "durationModifier": { "time_constraint": 1, // AT_LEAST "seconds": }, "sceneSelection": { "type": 0, "name": " ", "canvasSelection": "Main" },

Source from the content-addressed store, hash-verified

34// "version": 1
35// }
36static OBSDataAutoRelease
37buildSceneConditionData(const QString &scene, const Duration &triggerDuration)
38{
39 OBSDataAutoRelease seg = obs_data_create();
40 obs_data_set_bool(seg, "enabled", true);
41 obs_data_set_int(seg, "version", 2);
42
43 OBSDataAutoRelease durMod = obs_data_create();
44 obs_data_set_int(durMod, "time_constraint", 1);
45 triggerDuration.Save(durMod, "seconds");
46
47 OBSDataAutoRelease sceneSel = obs_data_create();
48 obs_data_set_int(sceneSel, "type", 0);
49 obs_data_set_string(sceneSel, "name", scene.toUtf8().constData());
50 obs_data_set_string(sceneSel, "canvasSelection", "Main");
51
52 OBSDataAutoRelease data = obs_data_create();
53 obs_data_set_obj(data, "segmentSettings", seg);
54 obs_data_set_string(data, "id", "scene");
55 obs_data_set_int(data, "logic", 0);
56 obs_data_set_obj(data, "durationModifier", durMod);
57 obs_data_set_obj(data, "sceneSelection", sceneSel);
58 obs_data_set_int(data, "type", 10);
59 obs_data_set_int(data, "version", 1);
60
61 return data;
62}
63
64// Builds the obs_data blob for a scene-switch action,
65// matching MacroActionSwitchScene::Save().

Callers 1

validatePageMethod · 0.85

Calls 1

SaveMethod · 0.45

Tested by

no test coverage detected