Remove unnecessary indirection

This commit is contained in:
WarmUpTill 2021-04-25 15:45:21 +02:00 committed by WarmUpTill
parent d9dfc1913d
commit bc5a04651f
19 changed files with 177 additions and 222 deletions

View File

@ -508,8 +508,8 @@ void SwitcherData::Thread()
sleep = 0;
linger = 0;
switcher->Prune();
if (switcher->stop) {
Prune();
if (stop) {
break;
}
if (checkPause()) {
@ -517,7 +517,7 @@ void SwitcherData::Thread()
}
match = checkForMatch(scene, transition, linger,
setPrevSceneAfterLinger);
if (switcher->stop) {
if (stop) {
break;
}
checkNoMatchSwitch(match, scene, transition, sleep);
@ -530,7 +530,7 @@ void SwitcherData::Thread()
cv.wait_for(lock, duration);
if (switcher->stop) {
if (stop) {
break;
}
@ -618,7 +618,7 @@ bool SwitcherData::checkForMatch(OBSWeakSource &scene,
break;
}
if (switcher->stop) {
if (stop) {
return false;
}
if (match) {
@ -662,9 +662,8 @@ void SwitcherData::Start()
{
if (!(th && th->isRunning())) {
stop = false;
switcher->th = new SwitcherThread();
switcher->th->start(
(QThread::Priority)switcher->threadPriority);
th = new SwitcherThread();
th->start((QThread::Priority)threadPriority);
// Will be overwritten quickly but might be useful
writeToStatusFile("Advanced Scene Switcher running");
@ -683,7 +682,7 @@ void SwitcherData::Start()
void SwitcherData::Stop()
{
if (th && th->isRunning()) {
switcher->stop = true;
stop = true;
transitionCv.notify_one();
cv.notify_one();
th->wait();

View File

@ -461,49 +461,37 @@ void SwitcherData::saveSettings(obs_data_t *obj)
void SwitcherData::saveGeneralSettings(obs_data_t *obj)
{
obs_data_set_int(obj, "interval", switcher->interval);
obs_data_set_int(obj, "interval", interval);
std::string nonMatchingSceneName =
GetWeakSourceName(switcher->nonMatchingScene);
std::string nonMatchingSceneName = GetWeakSourceName(nonMatchingScene);
obs_data_set_string(obj, "non_matching_scene",
nonMatchingSceneName.c_str());
obs_data_set_int(obj, "switch_if_not_matching",
switcher->switchIfNotMatching);
obs_data_set_double(obj, "noMatchDelay", switcher->noMatchDelay);
obs_data_set_int(obj, "switch_if_not_matching", switchIfNotMatching);
obs_data_set_double(obj, "noMatchDelay", noMatchDelay);
obs_data_set_double(obj, "cooldown", switcher->cooldown);
obs_data_set_double(obj, "cooldown", cooldown);
obs_data_set_bool(obj, "active", !switcher->stop);
obs_data_set_int(obj, "startup_behavior", switcher->startupBehavior);
obs_data_set_bool(obj, "active", !stop);
obs_data_set_int(obj, "startup_behavior", startupBehavior);
obs_data_set_int(obj, "autoStartEvent",
static_cast<int>(switcher->autoStartEvent));
static_cast<int>(autoStartEvent));
obs_data_set_bool(obj, "verbose", switcher->verbose);
obs_data_set_bool(obj, "disableHints", switcher->disableHints);
obs_data_set_bool(obj, "verbose", verbose);
obs_data_set_bool(obj, "disableHints", disableHints);
obs_data_set_int(obj, "priority0",
switcher->functionNamesByPriority[0]);
obs_data_set_int(obj, "priority1",
switcher->functionNamesByPriority[1]);
obs_data_set_int(obj, "priority2",
switcher->functionNamesByPriority[2]);
obs_data_set_int(obj, "priority3",
switcher->functionNamesByPriority[3]);
obs_data_set_int(obj, "priority4",
switcher->functionNamesByPriority[4]);
obs_data_set_int(obj, "priority5",
switcher->functionNamesByPriority[5]);
obs_data_set_int(obj, "priority6",
switcher->functionNamesByPriority[6]);
obs_data_set_int(obj, "priority7",
switcher->functionNamesByPriority[7]);
obs_data_set_int(obj, "priority8",
switcher->functionNamesByPriority[8]);
obs_data_set_int(obj, "priority9",
switcher->functionNamesByPriority[9]);
obs_data_set_int(obj, "priority0", functionNamesByPriority[0]);
obs_data_set_int(obj, "priority1", functionNamesByPriority[1]);
obs_data_set_int(obj, "priority2", functionNamesByPriority[2]);
obs_data_set_int(obj, "priority3", functionNamesByPriority[3]);
obs_data_set_int(obj, "priority4", functionNamesByPriority[4]);
obs_data_set_int(obj, "priority5", functionNamesByPriority[5]);
obs_data_set_int(obj, "priority6", functionNamesByPriority[6]);
obs_data_set_int(obj, "priority7", functionNamesByPriority[7]);
obs_data_set_int(obj, "priority8", functionNamesByPriority[8]);
obs_data_set_int(obj, "priority9", functionNamesByPriority[9]);
obs_data_set_int(obj, "threadPriority", switcher->threadPriority);
obs_data_set_int(obj, "threadPriority", threadPriority);
// After fresh install of OBS the vector can be empty
// as save() might be called before first load()
@ -511,62 +499,61 @@ void SwitcherData::saveGeneralSettings(obs_data_t *obj)
resetTabOrder();
}
obs_data_set_int(obj, "generalTabPos", switcher->tabOrder[0]);
obs_data_set_int(obj, "transitionTabPos", switcher->tabOrder[1]);
obs_data_set_int(obj, "pauseTabPos", switcher->tabOrder[2]);
obs_data_set_int(obj, "titleTabPos", switcher->tabOrder[3]);
obs_data_set_int(obj, "exeTabPos", switcher->tabOrder[4]);
obs_data_set_int(obj, "regionTabPos", switcher->tabOrder[5]);
obs_data_set_int(obj, "mediaTabPos", switcher->tabOrder[6]);
obs_data_set_int(obj, "fileTabPos", switcher->tabOrder[7]);
obs_data_set_int(obj, "randomTabPos", switcher->tabOrder[8]);
obs_data_set_int(obj, "timeTabPos", switcher->tabOrder[9]);
obs_data_set_int(obj, "idleTabPos", switcher->tabOrder[10]);
obs_data_set_int(obj, "sequenceTabPos", switcher->tabOrder[11]);
obs_data_set_int(obj, "audioTabPos", switcher->tabOrder[12]);
obs_data_set_int(obj, "videoTabPos", switcher->tabOrder[13]);
obs_data_set_int(obj, "networkTabPos", switcher->tabOrder[14]);
obs_data_set_int(obj, "sceneGroupTabPos", switcher->tabOrder[15]);
obs_data_set_int(obj, "triggerTabPos", switcher->tabOrder[16]);
obs_data_set_int(obj, "generalTabPos", tabOrder[0]);
obs_data_set_int(obj, "transitionTabPos", tabOrder[1]);
obs_data_set_int(obj, "pauseTabPos", tabOrder[2]);
obs_data_set_int(obj, "titleTabPos", tabOrder[3]);
obs_data_set_int(obj, "exeTabPos", tabOrder[4]);
obs_data_set_int(obj, "regionTabPos", tabOrder[5]);
obs_data_set_int(obj, "mediaTabPos", tabOrder[6]);
obs_data_set_int(obj, "fileTabPos", tabOrder[7]);
obs_data_set_int(obj, "randomTabPos", tabOrder[8]);
obs_data_set_int(obj, "timeTabPos", tabOrder[9]);
obs_data_set_int(obj, "idleTabPos", tabOrder[10]);
obs_data_set_int(obj, "sequenceTabPos", tabOrder[11]);
obs_data_set_int(obj, "audioTabPos", tabOrder[12]);
obs_data_set_int(obj, "videoTabPos", tabOrder[13]);
obs_data_set_int(obj, "networkTabPos", tabOrder[14]);
obs_data_set_int(obj, "sceneGroupTabPos", tabOrder[15]);
obs_data_set_int(obj, "triggerTabPos", tabOrder[16]);
obs_data_set_bool(obj, "saveWindowGeo", saveWindowGeo);
obs_data_set_int(obj, "windowPosX", switcher->windowPos.x());
obs_data_set_int(obj, "windowPosY", switcher->windowPos.y());
obs_data_set_int(obj, "windowWidth", switcher->windowSize.width());
obs_data_set_int(obj, "windowHeight", switcher->windowSize.height());
obs_data_set_int(obj, "windowPosX", windowPos.x());
obs_data_set_int(obj, "windowPosY", windowPos.y());
obs_data_set_int(obj, "windowWidth", windowSize.width());
obs_data_set_int(obj, "windowHeight", windowSize.height());
}
void SwitcherData::loadGeneralSettings(obs_data_t *obj)
{
obs_data_set_default_int(obj, "interval", default_interval);
switcher->interval = obs_data_get_int(obj, "interval");
interval = obs_data_get_int(obj, "interval");
obs_data_set_default_int(obj, "switch_if_not_matching", NO_SWITCH);
switcher->switchIfNotMatching =
switchIfNotMatching =
(NoMatch)obs_data_get_int(obj, "switch_if_not_matching");
std::string nonMatchingScene =
std::string nonMatchingSceneName =
obs_data_get_string(obj, "non_matching_scene");
switcher->nonMatchingScene =
GetWeakSourceByName(nonMatchingScene.c_str());
switcher->noMatchDelay = obs_data_get_double(obj, "noMatchDelay");
nonMatchingScene = GetWeakSourceByName(nonMatchingSceneName.c_str());
noMatchDelay = obs_data_get_double(obj, "noMatchDelay");
switcher->cooldown = obs_data_get_double(obj, "cooldown");
cooldown = obs_data_get_double(obj, "cooldown");
switcher->stop = !obs_data_get_bool(obj, "active");
switcher->startupBehavior =
stop = !obs_data_get_bool(obj, "active");
startupBehavior =
(StartupBehavior)obs_data_get_int(obj, "startup_behavior");
if (switcher->startupBehavior == START) {
switcher->stop = false;
if (startupBehavior == START) {
stop = false;
}
if (switcher->startupBehavior == STOP) {
switcher->stop = true;
if (startupBehavior == STOP) {
stop = true;
}
switcher->autoStartEvent = static_cast<AutoStartEvent>(
autoStartEvent = static_cast<AutoStartEvent>(
obs_data_get_int(obj, "autoStartEvent"));
switcher->verbose = obs_data_get_bool(obj, "verbose");
switcher->disableHints = obs_data_get_bool(obj, "disableHints");
verbose = obs_data_get_bool(obj, "verbose");
disableHints = obs_data_get_bool(obj, "disableHints");
obs_data_set_default_int(obj, "priority0", default_priority_0);
obs_data_set_default_int(obj, "priority1", default_priority_1);
@ -578,42 +565,32 @@ void SwitcherData::loadGeneralSettings(obs_data_t *obj)
obs_data_set_default_int(obj, "priority7", default_priority_7);
obs_data_set_default_int(obj, "priority8", default_priority_8);
switcher->functionNamesByPriority[0] =
(obs_data_get_int(obj, "priority0"));
switcher->functionNamesByPriority[1] =
(obs_data_get_int(obj, "priority1"));
switcher->functionNamesByPriority[2] =
(obs_data_get_int(obj, "priority2"));
switcher->functionNamesByPriority[3] =
(obs_data_get_int(obj, "priority3"));
switcher->functionNamesByPriority[4] =
(obs_data_get_int(obj, "priority4"));
switcher->functionNamesByPriority[5] =
(obs_data_get_int(obj, "priority5"));
switcher->functionNamesByPriority[6] =
(obs_data_get_int(obj, "priority6"));
switcher->functionNamesByPriority[7] =
(obs_data_get_int(obj, "priority7"));
switcher->functionNamesByPriority[8] =
(obs_data_get_int(obj, "priority8"));
switcher->functionNamesByPriority[9] =
(obs_data_get_int(obj, "priority9"));
if (!switcher->prioFuncsValid()) {
switcher->functionNamesByPriority[0] = (default_priority_0);
switcher->functionNamesByPriority[1] = (default_priority_1);
switcher->functionNamesByPriority[2] = (default_priority_2);
switcher->functionNamesByPriority[3] = (default_priority_3);
switcher->functionNamesByPriority[4] = (default_priority_4);
switcher->functionNamesByPriority[5] = (default_priority_5);
switcher->functionNamesByPriority[6] = (default_priority_6);
switcher->functionNamesByPriority[7] = (default_priority_7);
switcher->functionNamesByPriority[8] = (default_priority_8);
switcher->functionNamesByPriority[9] = (default_priority_9);
functionNamesByPriority[0] = (obs_data_get_int(obj, "priority0"));
functionNamesByPriority[1] = (obs_data_get_int(obj, "priority1"));
functionNamesByPriority[2] = (obs_data_get_int(obj, "priority2"));
functionNamesByPriority[3] = (obs_data_get_int(obj, "priority3"));
functionNamesByPriority[4] = (obs_data_get_int(obj, "priority4"));
functionNamesByPriority[5] = (obs_data_get_int(obj, "priority5"));
functionNamesByPriority[6] = (obs_data_get_int(obj, "priority6"));
functionNamesByPriority[7] = (obs_data_get_int(obj, "priority7"));
functionNamesByPriority[8] = (obs_data_get_int(obj, "priority8"));
functionNamesByPriority[9] = (obs_data_get_int(obj, "priority9"));
if (!prioFuncsValid()) {
functionNamesByPriority[0] = (default_priority_0);
functionNamesByPriority[1] = (default_priority_1);
functionNamesByPriority[2] = (default_priority_2);
functionNamesByPriority[3] = (default_priority_3);
functionNamesByPriority[4] = (default_priority_4);
functionNamesByPriority[5] = (default_priority_5);
functionNamesByPriority[6] = (default_priority_6);
functionNamesByPriority[7] = (default_priority_7);
functionNamesByPriority[8] = (default_priority_8);
functionNamesByPriority[9] = (default_priority_9);
}
obs_data_set_default_int(obj, "threadPriority",
QThread::NormalPriority);
switcher->threadPriority = obs_data_get_int(obj, "threadPriority");
threadPriority = obs_data_get_int(obj, "threadPriority");
obs_data_set_default_int(obj, "generalTabPos", 0);
obs_data_set_default_int(obj, "transitionTabPos", 1);
@ -633,40 +610,23 @@ void SwitcherData::loadGeneralSettings(obs_data_t *obj)
obs_data_set_default_int(obj, "sceneGroupTabPos", 15);
obs_data_set_default_int(obj, "triggerTabPos", 16);
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "generalTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "transitionTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "pauseTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "titleTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "exeTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "regionTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "mediaTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "fileTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "randomTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "timeTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "idleTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "sequenceTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "audioTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "videoTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "networkTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "sceneGroupTabPos")));
switcher->tabOrder.emplace_back(
(int)(obs_data_get_int(obj, "triggerTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "generalTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "transitionTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "pauseTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "titleTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "exeTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "regionTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "mediaTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "fileTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "randomTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "timeTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "idleTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "sequenceTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "audioTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "videoTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "networkTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "sceneGroupTabPos")));
tabOrder.emplace_back((int)(obs_data_get_int(obj, "triggerTabPos")));
if (!tabOrderValid()) {
resetTabOrder();
@ -690,7 +650,7 @@ bool SwitcherData::tabOrderValid()
void SwitcherData::resetTabOrder()
{
tabOrder = std::vector<int>(tab_count);
std::iota(switcher->tabOrder.begin(), switcher->tabOrder.end(), 0);
std::iota(tabOrder.begin(), tabOrder.end(), 0);
}
void SwitcherData::checkNoMatchSwitch(bool &match, OBSWeakSource &scene,

View File

@ -68,41 +68,38 @@ void registerHotkeys()
void SwitcherData::saveHotkeys(obs_data_t *obj)
{
obs_data_array_t *startHotkeyArrray =
obs_hotkey_save(switcher->startHotkey);
obs_data_array_t *startHotkeyArrray = obs_hotkey_save(startHotkey);
obs_data_set_array(obj, "startHotkey", startHotkeyArrray);
obs_data_array_release(startHotkeyArrray);
obs_data_array_t *stopHotkeyArrray =
obs_hotkey_save(switcher->stopHotkey);
obs_data_array_t *stopHotkeyArrray = obs_hotkey_save(stopHotkey);
obs_data_set_array(obj, "stopHotkey", stopHotkeyArrray);
obs_data_array_release(stopHotkeyArrray);
obs_data_array_t *toggleHotkeyArrray =
obs_hotkey_save(switcher->toggleHotkey);
obs_data_array_t *toggleHotkeyArrray = obs_hotkey_save(toggleHotkey);
obs_data_set_array(obj, "toggleHotkey", toggleHotkeyArrray);
obs_data_array_release(toggleHotkeyArrray);
}
void SwitcherData::loadHotkeys(obs_data_t *obj)
{
if (!switcher->hotkeysRegistered) {
if (!hotkeysRegistered) {
registerHotkeys();
}
obs_data_array_t *startHotkeyArrray =
obs_data_get_array(obj, "startHotkey");
obs_hotkey_load(switcher->startHotkey, startHotkeyArrray);
obs_hotkey_load(startHotkey, startHotkeyArrray);
obs_data_array_release(startHotkeyArrray);
obs_data_array_t *stopHotkeyArrray =
obs_data_get_array(obj, "stopHotkey");
obs_hotkey_load(switcher->stopHotkey, stopHotkeyArrray);
obs_hotkey_load(stopHotkey, stopHotkeyArrray);
obs_data_array_release(stopHotkeyArrray);
obs_data_array_t *toggleHotkeyArrray =
obs_data_get_array(obj, "toggleHotkey");
obs_hotkey_load(switcher->toggleHotkey, toggleHotkeyArrray);
obs_hotkey_load(toggleHotkey, toggleHotkeyArrray);
obs_data_array_release(toggleHotkeyArrray);
}

View File

@ -406,7 +406,7 @@ void AdvSceneSwitcher::on_sceneGroupSceneDown_clicked()
void SwitcherData::saveSceneGroups(obs_data_t *obj)
{
obs_data_array_t *sceneGroupArray = obs_data_array_create();
for (SceneGroup &sg : switcher->sceneGroups) {
for (SceneGroup &sg : sceneGroups) {
obs_data_t *array_obj = obs_data_create();
obs_data_set_string(array_obj, "name", sg.name.c_str());
@ -445,7 +445,7 @@ void SwitcherData::saveSceneGroups(obs_data_t *obj)
void SwitcherData::loadSceneGroups(obs_data_t *obj)
{
switcher->sceneGroups.clear();
sceneGroups.clear();
obs_data_array_t *sceneGroupArray =
obs_data_get_array(obj, "sceneGroups");
@ -476,8 +476,8 @@ void SwitcherData::loadSceneGroups(obs_data_t *obj)
double time = obs_data_get_double(array_obj, "time");
bool repeat = obs_data_get_bool(array_obj, "repeat");
switcher->sceneGroups.emplace_back(name, type, scenes, count,
time, repeat);
sceneGroups.emplace_back(name, type, scenes, count, time,
repeat);
obs_data_release(array_obj);
}

View File

@ -305,7 +305,7 @@ void SwitcherData::checkTriggers()
void SwitcherData::saveSceneTriggers(obs_data_t *obj)
{
obs_data_array_t *triggerArray = obs_data_array_create();
for (auto &s : switcher->sceneTriggers) {
for (auto &s : sceneTriggers) {
obs_data_t *array_obj = obs_data_create();
s.save(array_obj);
@ -319,7 +319,7 @@ void SwitcherData::saveSceneTriggers(obs_data_t *obj)
void SwitcherData::loadSceneTriggers(obs_data_t *obj)
{
switcher->sceneTriggers.clear();
sceneTriggers.clear();
obs_data_array_t *triggerArray = obs_data_get_array(obj, "triggers");
size_t count = obs_data_array_count(triggerArray);
@ -327,7 +327,7 @@ void SwitcherData::loadSceneTriggers(obs_data_t *obj)
for (size_t i = 0; i < count; i++) {
obs_data_t *array_obj = obs_data_array_item(triggerArray, i);
switcher->sceneTriggers.emplace_back();
sceneTriggers.emplace_back();
sceneTriggers.back().load(array_obj);
obs_data_release(array_obj);

View File

@ -193,7 +193,7 @@ bool SwitcherData::checkAudioSwitch(OBSWeakSource &scene,
void SwitcherData::saveAudioSwitches(obs_data_t *obj)
{
obs_data_array_t *audioArray = obs_data_array_create();
for (AudioSwitch &s : switcher->audioSwitches) {
for (AudioSwitch &s : audioSwitches) {
obs_data_t *array_obj = obs_data_create();
s.save(array_obj);
@ -209,7 +209,7 @@ void SwitcherData::saveAudioSwitches(obs_data_t *obj)
void SwitcherData::loadAudioSwitches(obs_data_t *obj)
{
switcher->audioSwitches.clear();
audioSwitches.clear();
obs_data_array_t *audioArray = obs_data_get_array(obj, "audioSwitches");
size_t count = obs_data_array_count(audioArray);
@ -217,7 +217,7 @@ void SwitcherData::loadAudioSwitches(obs_data_t *obj)
for (size_t i = 0; i < count; i++) {
obs_data_t *array_obj = obs_data_array_item(audioArray, i);
switcher->audioSwitches.emplace_back();
audioSwitches.emplace_back();
audioSwitches.back().load(array_obj);
obs_data_release(array_obj);

View File

@ -143,7 +143,7 @@ bool SwitcherData::checkExeSwitch(OBSWeakSource &scene,
void SwitcherData::saveExecutableSwitches(obs_data_t *obj)
{
obs_data_array_t *executableArray = obs_data_array_create();
for (ExecutableSwitch &s : switcher->executableSwitches) {
for (ExecutableSwitch &s : executableSwitches) {
obs_data_t *array_obj = obs_data_create();
s.save(array_obj);
@ -157,7 +157,7 @@ void SwitcherData::saveExecutableSwitches(obs_data_t *obj)
void SwitcherData::loadExecutableSwitches(obs_data_t *obj)
{
switcher->executableSwitches.clear();
executableSwitches.clear();
obs_data_array_t *executableArray =
obs_data_get_array(obj, "executableSwitches");
@ -166,7 +166,7 @@ void SwitcherData::loadExecutableSwitches(obs_data_t *obj)
for (size_t i = 0; i < count; i++) {
obs_data_t *array_obj = obs_data_array_item(executableArray, i);
switcher->executableSwitches.emplace_back();
executableSwitches.emplace_back();
executableSwitches.back().load(array_obj);
obs_data_release(array_obj);

View File

@ -378,7 +378,7 @@ void AdvSceneSwitcher::on_fileDown_clicked()
void SwitcherData::saveFileSwitches(obs_data_t *obj)
{
obs_data_array_t *fileArray = obs_data_array_create();
for (FileSwitch &s : switcher->fileSwitches) {
for (FileSwitch &s : fileSwitches) {
obs_data_t *array_obj = obs_data_create();
s.save(array_obj);
@ -389,23 +389,22 @@ void SwitcherData::saveFileSwitches(obs_data_t *obj)
obs_data_set_array(obj, "fileSwitches", fileArray);
obs_data_array_release(fileArray);
obs_data_set_bool(obj, "readEnabled", switcher->fileIO.readEnabled);
obs_data_set_string(obj, "readPath", switcher->fileIO.readPath.c_str());
obs_data_set_bool(obj, "writeEnabled", switcher->fileIO.writeEnabled);
obs_data_set_string(obj, "writePath",
switcher->fileIO.writePath.c_str());
obs_data_set_bool(obj, "readEnabled", fileIO.readEnabled);
obs_data_set_string(obj, "readPath", fileIO.readPath.c_str());
obs_data_set_bool(obj, "writeEnabled", fileIO.writeEnabled);
obs_data_set_string(obj, "writePath", fileIO.writePath.c_str());
}
void SwitcherData::loadFileSwitches(obs_data_t *obj)
{
switcher->fileSwitches.clear();
fileSwitches.clear();
obs_data_array_t *fileArray = obs_data_get_array(obj, "fileSwitches");
size_t count = obs_data_array_count(fileArray);
for (size_t i = 0; i < count; i++) {
obs_data_t *array_obj = obs_data_array_item(fileArray, i);
switcher->fileSwitches.emplace_back();
fileSwitches.emplace_back();
fileSwitches.back().load(array_obj);
obs_data_release(array_obj);
@ -413,11 +412,11 @@ void SwitcherData::loadFileSwitches(obs_data_t *obj)
obs_data_array_release(fileArray);
obs_data_set_default_bool(obj, "readEnabled", false);
switcher->fileIO.readEnabled = obs_data_get_bool(obj, "readEnabled");
switcher->fileIO.readPath = obs_data_get_string(obj, "readPath");
fileIO.readEnabled = obs_data_get_bool(obj, "readEnabled");
fileIO.readPath = obs_data_get_string(obj, "readPath");
obs_data_set_default_bool(obj, "writeEnabled", false);
switcher->fileIO.writeEnabled = obs_data_get_bool(obj, "writeEnabled");
switcher->fileIO.writePath = obs_data_get_string(obj, "writePath");
fileIO.writeEnabled = obs_data_get_bool(obj, "writeEnabled");
fileIO.writePath = obs_data_get_string(obj, "writePath");
}
void AdvSceneSwitcher::setupFileTab()

View File

@ -168,7 +168,7 @@ int AdvSceneSwitcher::IgnoreIdleWindowsFindByData(const QString &window)
void SwitcherData::saveIdleSwitches(obs_data_t *obj)
{
obs_data_array_t *ignoreIdleWindowsArray = obs_data_array_create();
for (std::string &window : switcher->ignoreIdleWindows) {
for (std::string &window : ignoreIdleWindows) {
obs_data_t *array_obj = obs_data_create();
obs_data_set_string(array_obj, "window", window.c_str());
obs_data_array_push_back(ignoreIdleWindowsArray, array_obj);
@ -182,7 +182,7 @@ void SwitcherData::saveIdleSwitches(obs_data_t *obj)
void SwitcherData::loadIdleSwitches(obs_data_t *obj)
{
switcher->ignoreIdleWindows.clear();
ignoreIdleWindows.clear();
obs_data_array_t *ignoreIdleWindowsArray =
obs_data_get_array(obj, "ignoreIdleWindows");
@ -194,7 +194,7 @@ void SwitcherData::loadIdleSwitches(obs_data_t *obj)
const char *window = obs_data_get_string(array_obj, "window");
switcher->ignoreIdleWindows.emplace_back(window);
ignoreIdleWindows.emplace_back(window);
obs_data_release(array_obj);
}

View File

@ -203,7 +203,7 @@ bool SwitcherData::checkMediaSwitch(OBSWeakSource &scene,
void SwitcherData::saveMediaSwitches(obs_data_t *obj)
{
obs_data_array_t *mediaArray = obs_data_array_create();
for (MediaSwitch &s : switcher->mediaSwitches) {
for (MediaSwitch &s : mediaSwitches) {
obs_data_t *array_obj = obs_data_create();
s.save(array_obj);
@ -218,13 +218,13 @@ void SwitcherData::saveMediaSwitches(obs_data_t *obj)
void SwitcherData::loadMediaSwitches(obs_data_t *obj)
{
obs_data_array_t *mediaArray = obs_data_get_array(obj, "mediaSwitches");
switcher->mediaSwitches.clear();
mediaSwitches.clear();
size_t count = obs_data_array_count(mediaArray);
for (size_t i = 0; i < count; i++) {
obs_data_t *array_obj = obs_data_array_item(mediaArray, i);
switcher->mediaSwitches.emplace_back();
mediaSwitches.emplace_back();
mediaSwitches.back().load(array_obj);
obs_data_release(array_obj);

View File

@ -462,7 +462,7 @@ void SwitcherData::saveNetworkSwitches(obs_data_t *obj)
{
networkConfig.Save(obj);
if (!networkConfig.ServerEnabled) {
switcher->server.stop();
server.stop();
}
}

View File

@ -202,7 +202,7 @@ bool SwitcherData::checkPause()
void SwitcherData::savePauseSwitches(obs_data_t *obj)
{
obs_data_array_t *pauseScenesArray = obs_data_array_create();
for (PauseEntry &s : switcher->pauseEntries) {
for (PauseEntry &s : pauseEntries) {
obs_data_t *array_obj = obs_data_create();
obs_data_set_int(array_obj, "pauseType",
@ -229,7 +229,7 @@ void SwitcherData::savePauseSwitches(obs_data_t *obj)
void SwitcherData::loadPauseSwitches(obs_data_t *obj)
{
switcher->pauseEntries.clear();
pauseEntries.clear();
obs_data_array_t *pauseArray = obs_data_get_array(obj, "pauseEntries");
size_t count = obs_data_array_count(pauseArray);
@ -246,8 +246,8 @@ void SwitcherData::loadPauseSwitches(obs_data_t *obj)
const char *window =
obs_data_get_string(array_obj, "pauseWindow");
switcher->pauseEntries.emplace_back(GetWeakSourceByName(scene),
type, target, window);
pauseEntries.emplace_back(GetWeakSourceByName(scene), type,
target, window);
obs_data_release(array_obj);
}

View File

@ -82,7 +82,7 @@ bool SwitcherData::checkRandom(OBSWeakSource &scene, OBSWeakSource &transition,
void SwitcherData::saveRandomSwitches(obs_data_t *obj)
{
obs_data_array_t *randomArray = obs_data_array_create();
for (RandomSwitch &s : switcher->randomSwitches) {
for (RandomSwitch &s : randomSwitches) {
obs_data_t *array_obj = obs_data_create();
s.save(array_obj);
@ -96,7 +96,7 @@ void SwitcherData::saveRandomSwitches(obs_data_t *obj)
void SwitcherData::loadRandomSwitches(obs_data_t *obj)
{
switcher->randomSwitches.clear();
randomSwitches.clear();
obs_data_array_t *randomArray =
obs_data_get_array(obj, "randomSwitches");
@ -105,7 +105,7 @@ void SwitcherData::loadRandomSwitches(obs_data_t *obj)
for (size_t i = 0; i < count; i++) {
obs_data_t *array_obj = obs_data_array_item(randomArray, i);
switcher->randomSwitches.emplace_back();
randomSwitches.emplace_back();
randomSwitches.back().load(array_obj);
obs_data_release(array_obj);

View File

@ -201,7 +201,7 @@ void AdvSceneSwitcher::updateScreenRegionCursorPos()
void SwitcherData::saveScreenRegionSwitches(obs_data_t *obj)
{
obs_data_array_t *screenRegionArray = obs_data_array_create();
for (ScreenRegionSwitch &s : switcher->screenRegionSwitches) {
for (ScreenRegionSwitch &s : screenRegionSwitches) {
obs_data_t *array_obj = obs_data_create();
s.save(array_obj);
@ -215,7 +215,7 @@ void SwitcherData::saveScreenRegionSwitches(obs_data_t *obj)
void SwitcherData::loadScreenRegionSwitches(obs_data_t *obj)
{
switcher->screenRegionSwitches.clear();
screenRegionSwitches.clear();
obs_data_array_t *screenRegionArray =
obs_data_get_array(obj, "screenRegion");
@ -225,7 +225,7 @@ void SwitcherData::loadScreenRegionSwitches(obs_data_t *obj)
obs_data_t *array_obj =
obs_data_array_item(screenRegionArray, i);
switcher->screenRegionSwitches.emplace_back();
screenRegionSwitches.emplace_back();
screenRegionSwitches.back().load(array_obj);
obs_data_release(array_obj);

View File

@ -245,7 +245,7 @@ bool SwitcherData::checkSceneSequence(OBSWeakSource &scene,
void SwitcherData::saveSceneSequenceSwitches(obs_data_t *obj)
{
obs_data_array_t *sceneSequenceArray = obs_data_array_create();
for (SceneSequenceSwitch &s : switcher->sceneSequenceSwitches) {
for (SceneSequenceSwitch &s : sceneSequenceSwitches) {
obs_data_t *array_obj = obs_data_create();
s.save(array_obj);
@ -259,7 +259,7 @@ void SwitcherData::saveSceneSequenceSwitches(obs_data_t *obj)
void SwitcherData::loadSceneSequenceSwitches(obs_data_t *obj)
{
switcher->sceneSequenceSwitches.clear();
sceneSequenceSwitches.clear();
obs_data_array_t *sceneSequenceArray =
obs_data_get_array(obj, "sceneRoundTrip");
@ -269,7 +269,7 @@ void SwitcherData::loadSceneSequenceSwitches(obs_data_t *obj)
obs_data_t *array_obj =
obs_data_array_item(sceneSequenceArray, i);
switcher->sceneSequenceSwitches.emplace_back();
sceneSequenceSwitches.emplace_back();
sceneSequenceSwitches.back().load(array_obj);
obs_data_release(array_obj);

View File

@ -149,7 +149,7 @@ bool SwitcherData::checkTimeSwitch(OBSWeakSource &scene,
void SwitcherData::saveTimeSwitches(obs_data_t *obj)
{
obs_data_array_t *timeArray = obs_data_array_create();
for (TimeSwitch &s : switcher->timeSwitches) {
for (TimeSwitch &s : timeSwitches) {
obs_data_t *array_obj = obs_data_create();
s.save(array_obj);
@ -163,7 +163,7 @@ void SwitcherData::saveTimeSwitches(obs_data_t *obj)
void SwitcherData::loadTimeSwitches(obs_data_t *obj)
{
switcher->timeSwitches.clear();
timeSwitches.clear();
obs_data_array_t *timeArray = obs_data_get_array(obj, "timeSwitches");
size_t count = obs_data_array_count(timeArray);
@ -171,7 +171,7 @@ void SwitcherData::loadTimeSwitches(obs_data_t *obj)
for (size_t i = 0; i < count; i++) {
obs_data_t *array_obj = obs_data_array_item(timeArray, i);
switcher->timeSwitches.emplace_back();
timeSwitches.emplace_back();
timeSwitches.back().load(array_obj);
obs_data_release(array_obj);

View File

@ -307,7 +307,7 @@ void setNextTransition(OBSWeakSource &targetScene, obs_source_t *currentSource,
void SwitcherData::saveSceneTransitions(obs_data_t *obj)
{
obs_data_array_t *sceneTransitionsArray = obs_data_array_create();
for (SceneTransition &s : switcher->sceneTransitions) {
for (SceneTransition &s : sceneTransitions) {
obs_data_t *array_obj = obs_data_create();
obs_source_t *source1 = obs_weak_source_get_source(s.scene);
@ -336,7 +336,7 @@ void SwitcherData::saveSceneTransitions(obs_data_t *obj)
obs_data_array_release(sceneTransitionsArray);
obs_data_array_t *defaultTransitionsArray = obs_data_array_create();
for (DefaultSceneTransition &s : switcher->defaultSceneTransitions) {
for (DefaultSceneTransition &s : defaultSceneTransitions) {
obs_data_t *array_obj = obs_data_create();
obs_source_t *source = obs_weak_source_get_source(s.scene);
@ -360,9 +360,9 @@ void SwitcherData::saveSceneTransitions(obs_data_t *obj)
obs_data_array_release(defaultTransitionsArray);
obs_data_set_bool(obj, "tansitionOverrideOverride",
switcher->tansitionOverrideOverride);
tansitionOverrideOverride);
obs_data_set_bool(obj, "adjustActiveTransitionType",
switcher->adjustActiveTransitionType);
adjustActiveTransitionType);
obs_data_set_default_int(obj, "defTransitionDelay",
default_def_transition_dealy);
obs_data_set_int(obj, "defTransitionDelay",
@ -371,7 +371,7 @@ void SwitcherData::saveSceneTransitions(obs_data_t *obj)
void SwitcherData::loadSceneTransitions(obs_data_t *obj)
{
switcher->sceneTransitions.clear();
sceneTransitions.clear();
obs_data_array_t *sceneTransitionsArray =
obs_data_get_array(obj, "sceneTransitions");
@ -387,7 +387,7 @@ void SwitcherData::loadSceneTransitions(obs_data_t *obj)
obs_data_get_string(array_obj, "transition");
double duration = obs_data_get_double(array_obj, "duration");
switcher->sceneTransitions.emplace_back(
sceneTransitions.emplace_back(
GetWeakSourceByName(scene1),
GetWeakSourceByName(scene2),
GetWeakTransitionByName(transition), duration);
@ -396,7 +396,7 @@ void SwitcherData::loadSceneTransitions(obs_data_t *obj)
}
obs_data_array_release(sceneTransitionsArray);
switcher->defaultSceneTransitions.clear();
defaultSceneTransitions.clear();
obs_data_array_t *defaultTransitionsArray =
obs_data_get_array(obj, "defaultTransitions");
@ -410,7 +410,7 @@ void SwitcherData::loadSceneTransitions(obs_data_t *obj)
const char *transition =
obs_data_get_string(array_obj, "transition");
switcher->defaultSceneTransitions.emplace_back(
defaultSceneTransitions.emplace_back(
GetWeakSourceByName(scene),
GetWeakTransitionByName(transition));
@ -418,9 +418,9 @@ void SwitcherData::loadSceneTransitions(obs_data_t *obj)
}
obs_data_array_release(defaultTransitionsArray);
switcher->tansitionOverrideOverride =
tansitionOverrideOverride =
obs_data_get_bool(obj, "tansitionOverrideOverride");
switcher->adjustActiveTransitionType =
adjustActiveTransitionType =
obs_data_get_bool(obj, "adjustActiveTransitionType");
DefaultSceneTransition::delay =
obs_data_get_int(obj, "defTransitionDelay");

View File

@ -296,7 +296,7 @@ void SwitcherData::saveVideoSwitches(obs_data_t *obj)
void SwitcherData::loadVideoSwitches(obs_data_t *obj)
{
switcher->videoSwitches.clear();
videoSwitches.clear();
obs_data_array_t *videoArray = obs_data_get_array(obj, "videoSwitches");
size_t count = obs_data_array_count(videoArray);
@ -304,7 +304,7 @@ void SwitcherData::loadVideoSwitches(obs_data_t *obj)
for (size_t i = 0; i < count; i++) {
obs_data_t *array_obj = obs_data_array_item(videoArray, i);
switcher->videoSwitches.emplace_back();
videoSwitches.emplace_back();
videoSwitches.back().load(array_obj);
obs_data_release(array_obj);

View File

@ -275,7 +275,7 @@ bool SwitcherData::checkWindowTitleSwitch(OBSWeakSource &scene,
void SwitcherData::saveWindowTitleSwitches(obs_data_t *obj)
{
obs_data_array_t *windowTitleArray = obs_data_array_create();
for (WindowSwitch &s : switcher->windowSwitches) {
for (WindowSwitch &s : windowSwitches) {
obs_data_t *array_obj = obs_data_create();
s.save(array_obj);
@ -287,7 +287,7 @@ void SwitcherData::saveWindowTitleSwitches(obs_data_t *obj)
obs_data_array_release(windowTitleArray);
obs_data_array_t *ignoreWindowsArray = obs_data_array_create();
for (std::string &window : switcher->ignoreWindowsSwitches) {
for (std::string &window : ignoreWindowsSwitches) {
obs_data_t *array_obj = obs_data_create();
obs_data_set_string(array_obj, "ignoreWindow", window.c_str());
obs_data_array_push_back(ignoreWindowsArray, array_obj);
@ -299,7 +299,7 @@ void SwitcherData::saveWindowTitleSwitches(obs_data_t *obj)
void SwitcherData::loadWindowTitleSwitches(obs_data_t *obj)
{
switcher->windowSwitches.clear();
windowSwitches.clear();
obs_data_array_t *windowTitleArray =
obs_data_get_array(obj, "switches");
@ -309,14 +309,14 @@ void SwitcherData::loadWindowTitleSwitches(obs_data_t *obj)
obs_data_t *array_obj =
obs_data_array_item(windowTitleArray, i);
switcher->windowSwitches.emplace_back();
windowSwitches.emplace_back();
windowSwitches.back().load(array_obj);
obs_data_release(array_obj);
}
obs_data_array_release(windowTitleArray);
switcher->ignoreWindowsSwitches.clear();
ignoreWindowsSwitches.clear();
obs_data_array_t *ignoreWindowsArray =
obs_data_get_array(obj, "ignoreWindows");
@ -329,7 +329,7 @@ void SwitcherData::loadWindowTitleSwitches(obs_data_t *obj)
const char *window =
obs_data_get_string(array_obj, "ignoreWindow");
switcher->ignoreWindowsSwitches.emplace_back(window);
ignoreWindowsSwitches.emplace_back(window);
obs_data_release(array_obj);
}