コード例 #1
0
        public MainViewModel(IAccelerometer accelerometer = null,
                             IGyroscope gyroscope         = null,
                             IMagnetometer magnetometer   = null,
                             ICompass compass             = null,
                             IAmbientLight ambientLight   = null,
                             IBarometer barometer         = null,
                             IPedometer pedometer         = null,
                             IProximity proximity         = null,
                             IHeartRateMonitor heartRate  = null,
                             IHumidity humidity           = null,
                             ITemperature temperature     = null)
        {
            this.Sensors = new List <ISensorViewModel>();
            this.AddIf(accelerometer, "G");
            this.AddIf(gyroscope, "G");
            this.AddIf(magnetometer, "M");
            this.AddIf(compass, "D");
            this.AddIf(ambientLight, "Light");
            this.AddIf(barometer, "Pressure");
            this.AddIf(pedometer, "Steps");
            this.AddIf(proximity, "Near");

            this.AddIf(heartRate, "Heart Rate (bpm)");
            this.AddIf(humidity, "Humidity");
            this.AddIf(temperature, "Temp");
        }
コード例 #2
0
 /// <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;
 }
コード例 #3
0
        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!");
            }
        }
コード例 #4
0
        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;
            }
        }