| 83 | } |
| 84 | |
| 85 | bool ShadingControl_Impl::isControlTypeValueAllowingSchedule(const std::string& controlType) { |
| 86 | static constexpr std::array data{//"AlwaysOn", |
| 87 | //"AlwaysOff", |
| 88 | "OnIfScheduleAllows", "OnIfHighSolarOnWindow", "OnIfHighHorizontalSolar", "OnIfHighOutdoorAirTemperature", |
| 89 | "OnIfHighZoneAirTemperature", "OnIfHighZoneCooling", |
| 90 | //"OnIfHighGlare", |
| 91 | //"MeetDaylightIlluminanceSetpoint", |
| 92 | "OnNightIfLowOutdoorTempAndOffDay", "OnNightIfLowInsideTempAndOffDay", "OnNightIfHeatingAndOffDay", |
| 93 | "OnNightIfLowOutdoorTempAndOnDayIfCooling", "OnNightIfHeatingAndOnDayIfCooling", |
| 94 | "OffNightAndOnDayIfCoolingAndHighSolarOnWindow", "OnNightAndOnDayIfCoolingAndHighSolarOnWindow", |
| 95 | "OnIfHighOutdoorAirTempAndHighSolarOnWindow", "OnIfHighOutdoorAirTempAndHighHorizontalSolar", |
| 96 | "OnIfHighZoneAirTempAndHighSolarOnWindow", "OnIfHighZoneAirTempAndHighHorizontalSolar"}; |
| 97 | return std::find_if(data.begin(), data.end(), [&controlType](auto c) { return openstudio::istringEqual(controlType, c); }) != data.end(); |
| 98 | } |
| 99 | |
| 100 | bool ShadingControl_Impl::isControlTypeValueRequiringSchedule(const std::string& controlType) { |
| 101 | return openstudio::istringEqual("OnIfScheduleAllows", controlType); |