Ejemplo n.º 1
0
        public void EncodeRequest(ref SensorAcqResult sensorAcq)
        {
            ISensorAdapter cv = GetSensorAdapter(sensorAcq.Sensor.ProtocolType);

            if (cv == null)
            {
                sensorAcq.ErrorCode = (int)Node.Errors.ERR_UNKNOW_PROTOCOL;
                sensorAcq.Request   = null;
                return;
            }
            cv.Request(ref sensorAcq);
        }
Ejemplo n.º 2
0
        public void Initialize()
        {
            foreach (Room room in Environment.Rooms)
            {
                _roomMapping.Add(room.Id, room);
            }

            for (int i = 0; i < LightAdapters.Count; i++)
            {
                ILightAdapter adapter = LightAdapters[i];

                foreach (ISmartLight light in adapter.PollLights())
                {
                    if (_lightByAdapterMap.ContainsKey(light.Id))
                    {
                        throw new Exception($"Duplicate light '{light.Id}' detected!");
                    }

                    _lightByAdapterMap.Add(light.Id, i);
                }
            }

            for (int i = 0; i < SensorAdapters.Count; i++)
            {
                ISensorAdapter adapter = SensorAdapters[i];

                foreach (ISmartSensor sensor in adapter.PollSensors())
                {
                    if (_sensorByAdapterMap.ContainsKey(sensor.Id))
                    {
                        throw new Exception($"Duplicate sensor '{sensor.Id}' detected!");
                    }

                    _sensorByAdapterMap.Add(sensor.Id, i);
                }
            }
        }