| 304 | } |
| 305 | |
| 306 | boost::optional<RefrigerationSystem> RefrigerationCompressor_Impl::system() const { |
| 307 | boost::optional<RefrigerationSystem> result; |
| 308 | |
| 309 | auto refrigerationCompressor = this->getObject<RefrigerationCompressor>(); |
| 310 | for (const RefrigerationSystem& refrigerationSystem : this->model().getConcreteModelObjects<RefrigerationSystem>()) { |
| 311 | RefrigerationCompressorVector refrigerationCompressors = refrigerationSystem.compressors(); |
| 312 | if (!refrigerationCompressors.empty() |
| 313 | && std::find(refrigerationCompressors.begin(), refrigerationCompressors.end(), refrigerationCompressor) |
| 314 | != refrigerationCompressors.end()) { |
| 315 | result = refrigerationSystem; |
| 316 | break; |
| 317 | } else { |
| 318 | RefrigerationCompressorVector refrigerationHighStageCompressors = refrigerationSystem.highStageCompressors(); |
| 319 | if (!refrigerationHighStageCompressors.empty() |
| 320 | && std::find(refrigerationHighStageCompressors.begin(), refrigerationHighStageCompressors.end(), refrigerationCompressor) |
| 321 | != refrigerationHighStageCompressors.end()) { |
| 322 | result = refrigerationSystem; |
| 323 | break; |
| 324 | } |
| 325 | } |
| 326 | } |
| 327 | |
| 328 | return result; |
| 329 | } |
| 330 | |
| 331 | void RefrigerationCompressor_Impl::removeFromSystem() { |
| 332 | if (boost::optional<RefrigerationSystem> refrigerationSystem = this->system()) { |
no test coverage detected