| 405 | } |
| 406 | |
| 407 | boost::optional<AirLoopHVAC> AirLoopHVACOutdoorAirSystem_Impl::airLoopHVAC() const { |
| 408 | |
| 409 | if (m_airLoopHVAC) { // HVACComponent_Impl caches |
| 410 | return m_airLoopHVAC; |
| 411 | } |
| 412 | |
| 413 | for (auto& airLoop : this->model().getConcreteModelObjects<AirLoopHVAC>()) { |
| 414 | if (airLoop.supplyComponent(this->handle())) { |
| 415 | m_airLoopHVAC = airLoop; |
| 416 | return airLoop; |
| 417 | } |
| 418 | } |
| 419 | |
| 420 | return boost::none; |
| 421 | } |
| 422 | |
| 423 | std::vector<ModelObject> AirLoopHVACOutdoorAirSystem_Impl::components(openstudio::IddObjectType type) const { |
| 424 | return openstudio::concat<ModelObject>(this->oaComponents(type), this->reliefComponents(type)); |
no test coverage detected