Пример #1
0
 public Command(Room room, Device device, EDeviceCapabilities action)
 {
     mAction = action;
     mDevice = device;
     mRoom = room;
     mHasData = true;
 }
Пример #2
0
        public List<Device> ListDevicesByCaps(Room rm, EDeviceCapabilities caps)
        {
            List<Device> ret = new List<Device>();
            if (rm == null)
            {
                foreach (Room r in mRooms)
                {
                    ret.AddRange(ListDevicesByCaps(r, caps));
                }
            }
            else
            {
                foreach (Device d in rm.ListDevices())
                {
                    if ((d.Capabilities.Caps & caps) == caps) ret.Add(d);
                }
            }

            return ret;
        }
Пример #3
0
 public void Execute(string device, EDeviceCapabilities action)
 {
     switch (action)
     {
         case EDeviceCapabilities.TurnUp:
             Dim(device, 100);
             break;
         case EDeviceCapabilities.TurnOn:
             DeviceOnOff(device, true);
             break;
         case EDeviceCapabilities.TurnOff:
             DeviceOnOff(device, false);
             break;
         case EDeviceCapabilities.TurnDown:
             Dim(device, 30);
             break;
         case EDeviceCapabilities.Dim:
             Dim(device, 30);
             break;
         default:
             //TODO: Should throw error
             break;
     }
     Thread.Sleep(300);
 }