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

Method Load

lib/macro/macro-segment.cpp:117–154  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

115}
116
117bool MacroSegment::Load(obs_data_t *obj)
118{
119 OBSDataAutoRelease data = obs_data_get_obj(obj, "segmentSettings");
120 _collapsed = obs_data_get_bool(data, "collapsed");
121 _varMappingExpanded = obs_data_get_bool(data, "varMappingExpanded");
122 _useCustomLabel = obs_data_get_bool(data, "useCustomLabel");
123 _customLabel = obs_data_get_string(data, "customLabel");
124 obs_data_set_default_bool(data, "enabled", true);
125 _enabled = obs_data_get_bool(data, "enabled");
126
127 // TODO: remove this fallback at some point
128 if (!obs_data_has_user_value(data, "version")) {
129 _enabled = obs_data_get_bool(obj, "enabled");
130 }
131
132 // Reset the previously unused "enabled" value for conditions to "true"
133 if (obs_data_get_int(data, "version") < 2 &&
134 obs_data_has_user_value(obj, "logic")) {
135 _enabled = true;
136 }
137
138 _varMappings.clear();
139 OBSDataArrayAutoRelease mappingsArray =
140 obs_data_get_array(data, "varMappings");
141 const size_t count = obs_data_array_count(mappingsArray);
142 _varMappings.reserve(count);
143 for (size_t i = 0; i < count; i++) {
144 OBSDataAutoRelease item = obs_data_array_item(mappingsArray, i);
145 VarMapping mapping;
146 mapping.variable = GetWeakVariableByName(
147 obs_data_get_string(item, "variable"));
148 _varMappings.push_back(std::move(mapping));
149 _varMappings.back().tempVar.Load(item, GetMacro(), "tempVar");
150 }
151
152 ClearAvailableTempvars();
153 return true;
154}
155
156bool MacroSegment::PostLoad()
157{

Callers

nothing calls this directly

Calls 2

GetWeakVariableByNameFunction · 0.85
GetMacroFunction · 0.85

Tested by

no test coverage detected