| 381 | } |
| 382 | |
| 383 | boost::optional<OutputEnergyManagementSystem> Model_Impl::outputEnergyManagementSystem() const { |
| 384 | if (m_cachedOutputEnergyManagementSystem) { |
| 385 | return m_cachedOutputEnergyManagementSystem; |
| 386 | } |
| 387 | |
| 388 | boost::optional<OutputEnergyManagementSystem> result = this->model().getOptionalUniqueModelObject<OutputEnergyManagementSystem>(); |
| 389 | if (result) { |
| 390 | m_cachedOutputEnergyManagementSystem = result; |
| 391 | result->getImpl<OutputEnergyManagementSystem_Impl>() |
| 392 | ->OutputEnergyManagementSystem_Impl::onRemoveFromWorkspace.connect<Model_Impl, &Model_Impl::clearCachedOutputEnergyManagementSystem>( |
| 393 | const_cast<openstudio::model::detail::Model_Impl*>(this)); |
| 394 | } |
| 395 | |
| 396 | return m_cachedOutputEnergyManagementSystem; |
| 397 | } |
| 398 | |
| 399 | boost::optional<OutputTableSummaryReports> Model_Impl::outputTableSummaryReports() const { |
| 400 | if (m_cachedOutputTableSummaryReports) { |