public static bool TryParse(string input, out IPressure output) { #region Prepare Variables string capInput = input.ToUpperInvariant(); string extraction = input.ExtractNumberComponentFromMeasurementString(); double conversion = 0; #endregion #region Convert To Double bool failed = !double.TryParse(extraction, out conversion); if (failed) { Debug.AddDetailMessage("Measurement Input not successfully converted."); Debug.AddDetailMessage("----" + capInput); output = new Pressures.Pascal(0); return(false); } #endregion #endregion #region Convert To Pressure if (capInput.EndsWithAny(Suffixes.Atmosphere)) { output = new Pressures.Atmosphere(conversion); return(true); } if (capInput.EndsWithAny(Suffixes.Bar)) { output = new Pressures.Bar(conversion); return(true); } if (capInput.EndsWithAny(Suffixes.KiloPascal)) { output = new Pressures.KiloPascal(conversion); return(true); } if (capInput.EndsWithAny(Suffixes.MilliMeterOfMercury)) { output = new Pressures.MilliMeterOfMercury(conversion); return(true); } if (capInput.EndsWithAny(Suffixes.Pascal)) { output = new Pressures.Pascal(conversion); return(true); } if (capInput.EndsWithAny(Suffixes.PoundPerSquareInch)) { output = new Pressures.PoundPerSquareInch(conversion); return(true); } #endregion #region ... Conversion #region Type Unrecognised Debug.AddDetailMessage("No Type for input Pressure conversion. Break here for details..."); Debug.AddDetailMessage("----" + capInput); output = new Pressures.Pascal(0); return(false); #endregion }
/// <summary> /// Initializes a new instance of the <see cref="WeatherReport"/> class. /// </summary> /// <param name="time">The value of time.</param> /// <param name="temperature">The value of temperature.</param> /// <param name="pressure">The value of atmospheric pressure.</param> /// <param name="humidity">The value of humidity.</param> /// <param name="wind">The value of wind.</param> /// <param name="cloudiness">The value of cloudiness.</param> /// <param name="precipitation">The value of precipitation.</param> public WeatherReport( DateTime time, ITemperature temperature, IPressure pressure, IHumidity humidity, IWind wind, ICloudiness cloudiness, IPrecipitation precipitation) { this.Time = time; this.Temperature = temperature; this.Pressure = pressure; this.Humidity = humidity; this.Wind = wind; this.Cloudiness = cloudiness; this.Precipitation = precipitation; }
public void GetAllDataByType(char typeOfSensor) { switch (typeOfSensor) { case 't': foreach (Sensor sensor in sensors) { if (sensor is ITemperature) { ITemperature ts = sensor as ITemperature; ts.Unit = unit; Console.WriteLine("{0}: {1} {2}", sensor.Name, ts.Temperature, ts.Unit); } } break; case 'h': foreach (Sensor sensor in sensors) { if (sensor is IHumidity) { IHumidity hs = sensor as IHumidity; Console.WriteLine("{0}: {1}%", sensor.Name, hs.Humidity); } } break; case 'p': foreach (Sensor sensor in sensors) { if (sensor is IPressure) { IPressure ps = sensor as IPressure; Console.WriteLine("{0}: {1} hPA", sensor.Name, ps.Pressure); } } break; default: throw new Exception("Wrong switch case!"); } }
public bool TryParse(string value, out IPressure output) => Pressure.TryParse(value, out output);
public Millibars(IPressure pressure) : this(pressure.To <Millibars>().Value) { }
public bool TryParse(string value, out IPressure output) => throw new NotImplementedException();
public Calculator(ISpeed speed, ITemperature temperature, IPressure pressure) { _speed = speed; _temperature = temperature; _pressure = pressure; }
public InchesOfMercury(IPressure pressure) : this(pressure.To <InchesOfMercury>().Value) { }
public void GetSpecifiedData(string type, string comparsionString, double value) { IsGreaterThanValue = x => x > value; IsLowerThanValue = x => x < value; Console.WriteLine(type + " " + comparsionString + " " + value); switch (type) { case "t": foreach (Sensor sensor in sensors) { if (sensor is ITemperature) { ITemperature ts = sensor as ITemperature; if (comparsionString.Equals(">")) { if (IsGreaterThanValue(ts.Temperature)) { Console.WriteLine("{0}: {1} {2}", sensor.Name, ts.Temperature, ts.Unit); } } else { if (IsLowerThanValue(ts.Temperature)) { Console.WriteLine("{0}: {1} {2}", sensor.Name, ts.Temperature, ts.Unit); } } } } break; case "h": foreach (Sensor sensor in sensors) { if (sensor is IHumidity) { IHumidity hs = sensor as IHumidity; if (comparsionString.Equals(">")) { if (IsGreaterThanValue(hs.Humidity)) { Console.WriteLine("{0}: {1}%", sensor.Name, hs.Humidity); } } else { if (IsLowerThanValue(hs.Humidity)) { Console.WriteLine("{0}: {1}%", sensor.Name, hs.Humidity); } } } } break; case "p": foreach (Sensor sensor in sensors) { if (sensor is IPressure) { IPressure ps = sensor as IPressure; if (comparsionString.Equals(">")) { if (IsGreaterThanValue(ps.Pressure)) { Console.WriteLine("{0}: {1} hPa", sensor.Name, ps.Pressure); } } else { if (IsLowerThanValue(ps.Pressure)) { Console.WriteLine("{0}: {1} hPA", sensor.Name, ps.Pressure); } } } } break; } }
public static bool TryParse(string value, out IPressure output) => objectFactory.TryParse(value, out output);
public static T To <T>(this IPressure current) where T : IPressure, new() { return(current.FactorConvert <T>()); }