| 330 | } |
| 331 | |
| 332 | bool WaterToWaterComponent_Impl::addToTertiaryNode(Node& node) { |
| 333 | auto _model = node.model(); |
| 334 | auto thisModelObject = getObject<ModelObject>(); |
| 335 | auto t_plantLoop = node.plantLoop(); |
| 336 | |
| 337 | boost::optional<unsigned> componentInletPort = tertiaryInletPort(); |
| 338 | boost::optional<unsigned> componentOutletPort = tertiaryOutletPort(); |
| 339 | |
| 340 | boost::optional<HVACComponent> systemStartComponent; |
| 341 | boost::optional<HVACComponent> systemEndComponent; |
| 342 | |
| 343 | if (node.getImpl<Node_Impl>()->isConnected(thisModelObject)) { |
| 344 | return false; |
| 345 | } |
| 346 | |
| 347 | if (t_plantLoop) { |
| 348 | if (t_plantLoop->supplyComponent(node.handle())) { |
| 349 | |
| 350 | systemStartComponent = t_plantLoop->supplyInletNode(); |
| 351 | systemEndComponent = t_plantLoop->supplyOutletNode(); |
| 352 | |
| 353 | removeFromTertiaryPlantLoop(); |
| 354 | } else if (t_plantLoop->demandComponent(node.handle())) { |
| 355 | |
| 356 | systemStartComponent = t_plantLoop->demandInletNode(); |
| 357 | systemEndComponent = t_plantLoop->demandOutletNode(); |
| 358 | |
| 359 | removeFromTertiaryPlantLoop(); |
| 360 | } |
| 361 | } |
| 362 | |
| 363 | if (systemStartComponent && systemEndComponent && componentOutletPort && componentInletPort) { |
| 364 | return HVACComponent_Impl::addToNode(node, systemStartComponent.get(), systemEndComponent.get(), componentInletPort.get(), |
| 365 | componentOutletPort.get()); |
| 366 | } else { |
| 367 | return false; |
| 368 | } |
| 369 | } |
| 370 | |
| 371 | boost::optional<ModelObject> WaterToWaterComponent_Impl::tertiaryInletModelObject() const { |
| 372 | return connectedObject(tertiaryInletPort()); |
nothing calls this directly
no test coverage detected