| 1254 | } |
| 1255 | |
| 1256 | boost::optional<double> EpwDataPoint::getField(EpwDataField id) const { |
| 1257 | boost::optional<int> ivalue; |
| 1258 | switch (id.value()) { |
| 1259 | case EpwDataField::DryBulbTemperature: |
| 1260 | return dryBulbTemperature(); |
| 1261 | break; |
| 1262 | case EpwDataField::DewPointTemperature: |
| 1263 | return dewPointTemperature(); |
| 1264 | break; |
| 1265 | case EpwDataField::RelativeHumidity: |
| 1266 | return relativeHumidity(); |
| 1267 | break; |
| 1268 | case EpwDataField::AtmosphericStationPressure: |
| 1269 | return atmosphericStationPressure(); |
| 1270 | break; |
| 1271 | case EpwDataField::ExtraterrestrialHorizontalRadiation: |
| 1272 | return extraterrestrialHorizontalRadiation(); |
| 1273 | break; |
| 1274 | case EpwDataField::ExtraterrestrialDirectNormalRadiation: |
| 1275 | return extraterrestrialDirectNormalRadiation(); |
| 1276 | break; |
| 1277 | case EpwDataField::HorizontalInfraredRadiationIntensity: |
| 1278 | return horizontalInfraredRadiationIntensity(); |
| 1279 | break; |
| 1280 | case EpwDataField::GlobalHorizontalRadiation: |
| 1281 | return globalHorizontalRadiation(); |
| 1282 | break; |
| 1283 | case EpwDataField::DirectNormalRadiation: |
| 1284 | return directNormalRadiation(); |
| 1285 | break; |
| 1286 | case EpwDataField::DiffuseHorizontalRadiation: |
| 1287 | return diffuseHorizontalRadiation(); |
| 1288 | break; |
| 1289 | case EpwDataField::GlobalHorizontalIlluminance: |
| 1290 | return globalHorizontalIlluminance(); |
| 1291 | break; |
| 1292 | case EpwDataField::DirectNormalIlluminance: |
| 1293 | return directNormalIlluminance(); |
| 1294 | break; |
| 1295 | case EpwDataField::DiffuseHorizontalIlluminance: |
| 1296 | return diffuseHorizontalIlluminance(); |
| 1297 | break; |
| 1298 | case EpwDataField::ZenithLuminance: |
| 1299 | return zenithLuminance(); |
| 1300 | break; |
| 1301 | case EpwDataField::WindDirection: |
| 1302 | return windDirection(); |
| 1303 | break; |
| 1304 | case EpwDataField::WindSpeed: |
| 1305 | return windSpeed(); |
| 1306 | break; |
| 1307 | case EpwDataField::TotalSkyCover: |
| 1308 | ivalue = totalSkyCover(); |
| 1309 | if (ivalue) { |
| 1310 | return boost::optional<double>((double)ivalue.get()); |
| 1311 | } |
| 1312 | break; |
| 1313 | case EpwDataField::OpaqueSkyCover: |