MCPcopy Create free account
hub / github.com/BespokeSynth/BespokeSynth / WriteModules

Method WriteModules

Source/ModuleContainer.cpp:576–607  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

574}
575
576ofxJSONElement ModuleContainer::WriteModules()
577{
578 if (mOwner)
579 IClickable::SetSaveContext(mOwner);
580
581 for (auto i = mModules.begin(); i != mModules.end(); ++i)
582 UpdateTarget(*i);
583
584 ofxJSONElement modules;
585
586 std::vector<IDrawableModule*> saveModules;
587 for (int i = 0; i < mModules.size(); ++i)
588 {
589 IDrawableModule* module = mModules[i];
590 if (module->IsSaveable())
591 saveModules.push_back(module);
592 }
593
594 sort(saveModules.begin(), saveModules.end(), ModuleSorter);
595
596 modules.resize((unsigned int)saveModules.size());
597
598 for (int i = 0; i < saveModules.size(); ++i)
599 {
600 ofxJSONElement moduleInfo;
601 saveModules[i]->SaveLayoutBase(moduleInfo);
602 modules[i] = moduleInfo;
603 }
604 IClickable::ClearSaveContext();
605
606 return modules;
607}
608
609void ModuleContainer::SaveState(FileStreamOut& out)
610{

Callers 4

SavePrefabMethod · 0.80
SaveLayoutMethod · 0.80
SaveLayoutMethod · 0.80
GetLayoutMethod · 0.80

Calls 5

UpdateTargetFunction · 0.85
sizeMethod · 0.80
resizeMethod · 0.80
SaveLayoutBaseMethod · 0.80
IsSaveableMethod · 0.45

Tested by

no test coverage detected