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

Method remove

src/model/AirLoopHVACSupplyPlenum.cpp:231–255  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

229 }
230
231 std::vector<IdfObject> AirLoopHVACSupplyPlenum_Impl::remove() {
232 Model t_model = model();
233
234 if (boost::optional<AirLoopHVAC> t_airLoopHVAC = airLoopHVAC()) {
235 AirLoopHVACZoneSplitter zoneSplitter = t_airLoopHVAC->zoneSplitter();
236 std::vector<ModelObject> t_outletModelObjects = outletModelObjects();
237
238 for (auto it = t_outletModelObjects.rbegin(); it != t_outletModelObjects.rend(); ++it) {
239 unsigned branchIndex = branchIndexForOutletModelObject(*it);
240 unsigned t_outletPort = outletPort(branchIndex);
241 unsigned connectedObjectInletPort = connectedObjectPort(t_outletPort).get();
242
243 t_model.connect(zoneSplitter, zoneSplitter.nextOutletPort(), *it, connectedObjectInletPort);
244 }
245
246 boost::optional<ModelObject> mo = inletModelObject();
247 OS_ASSERT(mo);
248 boost::optional<Node> node = mo->optionalCast<Node>();
249 OS_ASSERT(node);
250 zoneSplitter.removePortForBranch(zoneSplitter.branchIndexForOutletModelObject(node.get()));
251 node->remove();
252 }
253
254 return Splitter_Impl::remove();
255 }
256
257 ComponentType AirLoopHVACSupplyPlenum_Impl::componentType() const {
258 return ComponentType::None;

Callers

nothing calls this directly

Calls 6

zoneSplitterMethod · 0.80
getMethod · 0.45
connectMethod · 0.45
nextOutletPortMethod · 0.45
removePortForBranchMethod · 0.45

Tested by

no test coverage detected