MCPcopy Create free account
hub / github.com/NatLabRockies/OpenStudio / removeObject

Method removeObject

src/utilities/idf/Workspace.cpp:1367–1391  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1365 }
1366
1367 bool Workspace_Impl::removeObject(const Handle& handle) {
1368
1369 OptionalSavedWorkspaceObject objectData = savedWorkspaceObject(handle);
1370 if (!objectData) {
1371 return true;
1372 } // trivially satisfied
1373
1374 this->removeWorkspaceObject.nano_emit(WorkspaceObject(objectData->objectImplPtr), objectData->objectImplPtr->iddObject().type(),
1375 objectData->handle);
1376 this->removeWorkspaceObjectPtr.nano_emit(objectData->objectImplPtr, objectData->objectImplPtr->iddObject().type(), objectData->handle);
1377
1378 // actual work of removing from maps--is always successful
1379 WorkspaceObjectVector sources = nominallyRemoveObject(handle);
1380
1381 // can only be invalid if removal results in null and required
1382 if ((m_strictnessLevel < StrictnessLevel::Final) || isValid()) {
1383 std::vector<Handle> removedHandles(1, handle);
1384 registerRemovalOfObject(objectData->objectImplPtr, sources, removedHandles);
1385 this->onChange.nano_emit();
1386 return true;
1387 } else {
1388 restoreObject(*objectData);
1389 return false;
1390 }
1391 }
1392
1393 bool Workspace_Impl::removeObjects(const std::vector<Handle>& handles) {
1394

Callers 1

toIdfFileMethod · 0.45

Calls 4

nano_emitMethod · 0.80
iddObjectMethod · 0.80
WorkspaceObjectClass · 0.70
typeMethod · 0.45

Tested by

no test coverage detected