Inheritance: uLink.MonoBehaviour
Ejemplo n.º 1
0
 public void TestCreateInvalidUpper()
 {
     Assert.Throws <ArgumentOutOfRangeException>(() =>
     {
         Relay r = new Relay(RelayChannels);
     });
 }
Ejemplo n.º 2
0
    private void OnRaycastHit(RaycastHit hit, ref List <Vector3> points, ref List <Relay> relays)
    {
        points.Add(hit.point);

        Tower tower = hit.transform.GetComponent <Tower>();

        if (tower != null)
        {
            tower.Win();
            return;
        }

        PlayerController player = hit.transform.GetComponent <PlayerController>();

        if (player != null)
        {
            player.Kill();
            return;
        }

        Relay relayHit = hit.transform.GetComponent <Relay>();

        if (relayHit != null)
        {
            if (!relays.Contains(relayHit) && !relayHit.SpawnSignal)
            {
                relays.Add(relayHit);
                DoRaycastsRecursive(relayHit.SignalSpawnPoint, ref points, ref relays);
            }
        }
    }
Ejemplo n.º 3
0
 public void TestCreateInvalidLower()
 {
     Assert.Throws <ArgumentOutOfRangeException>(() =>
     {
         Relay r = new Relay(-1);
     });
 }
Ejemplo n.º 4
0
        public IColumnSyntax SubQuery(ICloseSyntax <IConditionValueSyntax> subquery)
        {
            var begin = new BeginSubquerySyntax(this);

            Relay.AddRange((subquery as SyntaxBase).Relay);
            return(new EndSubquerySyntax(begin));
        }
Ejemplo n.º 5
0
 private void UpdateStateObjects(Relay relay, bool state)
 {
     if (relay == Relay.All)
     {
         int i = 0;
         foreach (var item in Enum.GetValues(typeof(Relay)))
         {
             if (++i > PackageHost.GetSettingValue <int>("RelayCount") || item == (object)Relay.All)
             {
                 break;
             }
             else
             {
                 var relayAttribute = typeof(Relay).GetMember(item.ToString())[0].GetCustomAttribute <RelayAttribute>();
                 PackageHost.PushStateObject(item.ToString(), state,
                                             metadatas: new System.Collections.Generic.Dictionary <string, object>()
                 {
                     ["Id"]   = relayAttribute.Number,
                     ["Flag"] = relayAttribute.Code.ToString()
                 });
             }
         }
     }
     else
     {
         var relayAttribute = typeof(Relay).GetMember(relay.ToString())[0].GetCustomAttribute <RelayAttribute>();
         PackageHost.PushStateObject(relay.ToString(), state,
                                     metadatas: new System.Collections.Generic.Dictionary <string, object>()
         {
             ["Id"]   = relayAttribute.Number,
             ["Flag"] = relayAttribute.Code.ToString()
         });
     }
 }
Ejemplo n.º 6
0
 /// <summary>
 ///     Constructor for RelayItem
 /// </summary>
 /// <param name="channel">The channel number on the roboRIO</param>
 /// <param name="commonName">Common Name the RelayItem will have</param>
 /// <param name="_default">Default position for when the robot is initialized</param>
 public RelayItem(int channel, string commonName, Relay.Value _default = Relay.Value.Off)
 {
     relay   = new Relay(channel);
     Name    = commonName;
     Default = _default;
     relay.Set(_default);
 }
            // FormatItem: convert the individual Relay to a string
            // representing the 'items' property of the Collection+JSON response
            public string FormatItem(Relay rly, string rlyUrl)
            {
                JArray  items = new JArray();
                JObject item  = new JObject();

                item["href"] = rlyUrl;

                JObject ID = new JObject();

                ID["name"]  = "ID";
                ID["value"] = rly.ID;

                JObject State = new JObject();

                State["name"]  = "State";
                State["value"] = (rly.State) ? "Closed" : "Open";

                JArray data = new JArray();

                data.Add(ID);
                data.Add(State);

                item["data"] = data;

                items.Add(item);
                return(JsonConvert.SerializeObject(items));
            }
Ejemplo n.º 8
0
        public override void Execute(Relay server, Client client, Session session, Message message)
        {
            var body = JSON.Parse(message.body);

            ushort remoteBeat = Convert.ToUInt16(body["beat"].AsInt);

            client.lastHeartBeat = ((int)new DateTimeOffset(DateTime.UtcNow).ToUnixTimeSeconds()) % int.MaxValue;
            client.clockBeat     = remoteBeat;
            client.AddSumAtBeat(body["sum"]);

            // Below are Synchron operations - only valid when in a session
            if (session == null)
            {
                return;
            }

            // Pausing client if too advanced
            if (remoteBeat > session.lowestClock + Config.MAXIMUM_BEAT_DIFFERENCE && !client.IsPaused())
            {
                logger.Debug("Paused client from session " + session + " because too advanced (" + remoteBeat + " > " + session.lowestClock + ")");
                client.Pause();
            }

            // Checking if we can resume clients now that the others have caught back
            foreach (var cl in session.GetClients())
            {
                if (cl.IsPaused() && cl.clockBeat < session.lowestClock + Config.MAXIMUM_BEAT_DIFFERENCE)
                {
                    logger.Debug("Resumed client from session " + session + "(" + cl.clockBeat + " ~ " + session.lowestClock + ")");
                    cl.Unpause();
                }
            }
        }
Ejemplo n.º 9
0
        public void CanReadWriteOneChannel([Range(1, 8)] int channel)
        {
            var en = new RelaysEnumerator();

            var relaysInfo = en.CollectInfo();
            var relayInfo  = relaysInfo.First();
            var relay      = new Relay(relayInfo);

            if (relay.ChannelsCount < channel)
            {
                return;
            }

            if (relay.Open())
            {
                relay.WriteChannel(channel, false);
                var state = relay.ReadChannel(channel);
                Assert.That(state, Is.False);

                relay.WriteChannel(channel, true);
                state = relay.ReadChannel(channel);
                Assert.That(state, Is.True);

                relay.WriteChannel(channel, false);
                state = relay.ReadChannel(channel);
                Assert.That(state, Is.False);

                relay.Close();
            }
        }
Ejemplo n.º 10
0
 static void PopulateRelay(Relay <int, float, string> rly)
 {
     for (int i = 0; i < DELEGATES; ++i)
     {
         rly.AddListener(allDelegates[i], true);
     }
 }
Ejemplo n.º 11
0
        public void CanWriteAllChannels()
        {
            var en = new RelaysEnumerator();

            var relaysInfo = en.CollectInfo();
            var relayInfo  = relaysInfo.First();
            var relay      = new Relay(relayInfo);

            var mask = 0;

            for (var i = relay.ChannelsCount - 1; i >= 0; i--)
            {
                mask |= 1 << i;
            }

            if (relay.Open())
            {
                relay.WriteChannels(false);
                var status = relay.ReadChannels();
                Assert.That(status & mask, Is.EqualTo(0));

                relay.WriteChannels(true);
                status = relay.ReadChannels();
                Assert.That(status & mask, Is.EqualTo(mask));

                relay.WriteChannels(false);
                status = relay.ReadChannels();
                Assert.That(status & mask, Is.EqualTo(0));

                relay.Close();
            }
        }
Ejemplo n.º 12
0
        public static void Main()
        {
            var config = new SPI.Configuration(SPI_mod: SPI_Devices.SPI1,
                                               ChipSelect_Port: Pins.GPIO_PIN_D8,
                                               ChipSelect_ActiveState: false,
                                               ChipSelect_SetupTime: 0,
                                               ChipSelect_HoldTime: 0,
                                               Clock_IdleState: true,
                                               Clock_Edge: true,
                                               Clock_RateKHz: 10);

            var shiftRegister = new x74595(8, config);

            DigitalOutputPort relayPort = shiftRegister.CreateOutputPort(0, false);

            var relay = new Relay(relayPort);

            while (true)
            {
                // toggle the relay
                relay.Toggle();

                Debug.Print("Relay on: " + relay.IsOn.ToString());

                // wait for 5 seconds
                Thread.Sleep(1000);
            }
        }
Ejemplo n.º 13
0
        public override void Execute(Relay server, Client client, Session session, Message message)
        {
            if (session != null)
            {
                throw new Relay.UnexpectedSessionException();
            }

            uint id = server.CreateSession(client);

            var newJSON = new JSONObject();

            newJSON.Add("session", client.session.id);
            newJSON.Add("beat", client.session.GetLowestClock());

            using (var stream = client.tcp.NewStream())
            {
                var msg = new Message()
                {
                    controller = (byte)KingdomsSharedCode.Networking.Controller.SESSION_INFO,
                    body       = newJSON.ToString()
                };
                logger.Trace(">> " + msg);
                stream.Write(msg);
            }

            logger.Trace("Client " + client + " is now in session " + client.session);
        }
Ejemplo n.º 14
0
 public void TestCreateInvalidUpper()
 {
     Assert.Throws<ArgumentOutOfRangeException>(() =>
     {
         Relay r = new Relay(RelayChannels);
     });
 }
Ejemplo n.º 15
0
 public void TestCreateInvalidLower()
 {
     Assert.Throws<ArgumentOutOfRangeException>(() =>
     {
         Relay r = new Relay(-1);
     });
 }
Ejemplo n.º 16
0
        public void InvertRelayWithContactInput()
        {
            PowerSupplier  power1 = new PowerSupplier();
            PowerSupplier  power2 = new PowerSupplier();
            IndicatorLight light  = new IndicatorLight();
            Relay          relay  = new Relay(invert: true);

            relay.Input.ConnectTo(power1.Output);
            relay.InputOfContact.ConnectTo(power2.Output);
            relay.Output.ConnectTo(light.Input);

            Assert.IsFalse(light.Lighting);
            power1.On();
            power2.Off();
            Assert.IsFalse(light.Lighting);
            power1.On();
            power2.On();
            Assert.IsFalse(light.Lighting);
            power1.Off();
            power2.On();
            Assert.IsTrue(light.Lighting);
            power1.Off();
            power2.Off();
            Assert.IsFalse(light.Lighting);
        }
Ejemplo n.º 17
0
        public async Task ClearRelay(ITextChannel Channel)
        {
            Relay FindRelay = RelayDB.Relays.Find(Channel.Id);

            if (FindRelay == null)
            {
                await BuildEmbed(EmojiEnum.Annoyed)
                .WithTitle($"Relay already exists!")
                .WithDescription($"The relay to the channel {Channel} does not exist and thus can not be removed!")
                .SendEmbed(Context.Channel);

                return;
            }

            await SendForAdminApproval(RemoveRelayCallback,
                                       new Dictionary <string, string>() {
                { "ChannelID", Channel.Id.ToString() }
            },
                                       Context.User.Id,
                                       $"{Context.User.GetUserInformation()} has suggested that `{FindRelay.Message}` should be removed from the channel {Channel} which has an interval of {FindRelay.MessageInterval} messages.");

            await BuildEmbed(EmojiEnum.Love)
            .WithTitle($"The relay to `#{Channel}` with the message `{(FindRelay.Message.Length > 100 ? $"{FindRelay.Message.Substring(0, 100)}..." : FindRelay.Message)}` for every {FindRelay.MessageInterval} messages has been suggested for removal!")
            .WithDescription($"Once it has passed admin approval, it will be removed from the database.")
            .SendEmbed(Context.Channel);
        }
Ejemplo n.º 18
0
 private object pulse(Relay relay)
 {
     relay.Close();
     Thread.Sleep(100);
     relay.Open();
     return(relay);
 }
Ejemplo n.º 19
0
        // GET: Relays/Create
        public ActionResult Create(Guid id)
        {
            Relay relay = new Relay();

            relay.DeviceID = id;
            return(View(relay));
        }
Ejemplo n.º 20
0
        public IColumnSyntax SubQuery(IOrderBySyntax subquery)
        {
            var begin = new BeginSubquerySyntax(this);

            Relay.AddRange((subquery as SyntaxBase).Relay);
            return(new EndSubquerySyntax(begin));
        }
Ejemplo n.º 21
0
        private static void TestRelay()
        {
            Relay relay = new Relay(_goPiGo3, GrovePort.Grove1);

            Console.WriteLine($"Test {relay.SensorName} on port {relay.Port}, will change the state of the relay from on to off, reverse the polarity, turn on and off, reverse the polarity and turn on an off again.");
            Console.WriteLine($"{relay.SensorName}, Value: {relay.Value}, state: {relay} IsInverted: {relay.IsInverted}");
            // 2 is different than 0, so it should swith it to "on"
            Thread.Sleep(2000);
            relay.Value = 2;
            Console.WriteLine($"{relay.SensorName}, Value: {relay.Value}, state: {relay} IsInverted: {relay.IsInverted}");
            Thread.Sleep(2000);
            relay.Value = 0;
            Console.WriteLine($"{relay.SensorName}, Value: {relay.Value}, state: {relay} IsInverted: {relay.IsInverted}");
            Thread.Sleep(2000);
            relay.IsInverted = true;
            relay.Value      = 0;
            Console.WriteLine($"{relay.SensorName}, Value: {relay.Value}, state: {relay} IsInverted: {relay.IsInverted}");
            Thread.Sleep(2000);
            relay.Value = 2;
            Console.WriteLine($"{relay.SensorName}, Value: {relay.Value}, state: {relay} IsInverted: {relay.IsInverted}");
            Thread.Sleep(2000);
            relay.IsInverted = false;
            relay.On();
            Console.WriteLine($"{relay.SensorName}, Value: {relay.Value}, state: {relay} IsInverted: {relay.IsInverted}");
            Thread.Sleep(2000);
            relay.Off();
            Console.WriteLine($"{relay.SensorName}, Value: {relay.Value}, state: {relay} IsInverted: {relay.IsInverted}");
            Thread.Sleep(2000);
        }
Ejemplo n.º 22
0
        internal List <SyntaxBase> PassRelay()
        {
            var relay = Relay.ToList();

            relay.Add(this);
            return(relay);
        }
Ejemplo n.º 23
0
        public static void Rem()
        {
            sw.Stop();
            sw.Reset();

            System.Action <int, float, string>         multicast;
            List <System.Action <int, float, string> > list = new List <System.Action <int, float, string> >();
            Relay <int, float, string> rly = new Relay <int, float, string>();

            #region RELAY REMOVE
            for (int i = 0; i < LOOPS; ++i)
            {
                PopulateRelay(rly);
                for (int j = 0; j < DELEGATES; ++j)
                {
                    var d = allDelegates[j];
                    sw.Start();
                    rly.RemoveListener(d);
                    sw.Stop();
                }
            }
            LogStopwatch("Remove Relay", "ns", 1e6);
            sw.Reset();
            #endregion

            #region MULTICAST REMOVE
            for (int i = 0; i < LOOPS; ++i)
            {
                multicast = delegate {};
                PopulateMulticast(ref multicast);
                for (int j = 0; j < DELEGATES; ++j)
                {
                    var d = allDelegates[j];
                    sw.Start();
                    multicast -= d;
                    sw.Stop();
                }
            }
            LogStopwatch("Remove Multicast", "ns", 1e6);
            sw.Reset();
            #endregion

            #region LIST REMOVE
            for (int i = 0; i < LOOPS; ++i)
            {
                PopulateList(list);
                for (int j = 0; j < DELEGATES; ++j)
                {
                    var d = allDelegates[j];
                    sw.Start();
                    list.Remove(d);
                    sw.Stop();
                }
            }
            LogStopwatch("Remove List", "ns", 1e6);
            sw.Reset();
            #endregion

            PrintLogs();
        }
Ejemplo n.º 24
0
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='relay'>
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <Relay> PostRelayAsync(this IRelays operations, Relay relay, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.PostRelayWithHttpMessagesAsync(relay, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
Ejemplo n.º 25
0
        public ILiveMovie(CrestronControlSystem system)
        {
            this.controlSystem = system;

            this.comLight = new ILiveComPort(this.controlSystem.ComPorts[1]);
            this.comLight.Register();

            this.comProjector = new ILiveComPort(this.controlSystem.ComPorts[2]);
            this.comProjector.Register();

            this.relayPower = this.controlSystem.RelayPorts[1];
            this.relayGolf  = this.controlSystem.RelayPorts[2];
            this.irTV       = this.controlSystem.IROutputPorts[1];
            this.irAV       = this.controlSystem.IROutputPorts[2];
            this.irBlueray  = this.controlSystem.IROutputPorts[3];

            this.irTV.LoadIRDriver("");

            isin6     = new ILiveIsinRelay(comLight);
            this.tpc5 = new ILiveTPC5(comLight);
            //    port = new UDPClient("192.168.188.22", 6004, 8004);
            //    port.NetDataReceived += new NetDataReceivedEventHandler(port_NetDataReceived);
            //   port.Connect();
            //   bigvivitek = new ILiveVivitek(port);
        }
        public override void Handle()
        {
            // check CTS amount
            if (relay.finishedCTSs.Count == 0)
            {
                sim.eventQueue.Add(new RegionProgressEvent()
                {
                    time     = sim.clock,
                    relay    = relay,
                    sim      = sim,
                    previous = this
                });
            }
            else
            {
                // if any have failed send COL or go to next region
                if (relay.finishedCTSs.Any(t => t.failed))
                {
                    if (relay.COL_count < sim.protocolParameters.n_max_coll)
                    {
                        relay.COL_count++;
                        sim.eventQueue.Add(new StartCOLEvent()
                        {
                            time     = sim.clock,
                            relay    = relay,
                            sim      = sim,
                            previous = this
                        });
                    }
                    else
                    {
                        sim.eventQueue.Add(new RegionProgressEvent()
                        {
                            time     = sim.clock,
                            relay    = relay,
                            sim      = sim,
                            previous = this
                        });
                    }
                }
                // else choose relay and send packet
                else
                {
                    Relay chosen = relay.finishedCTSs.First().source;

                    sim.eventQueue.Add(new StartPKTEvent()
                    {
                        time              = sim.clock,
                        relay             = relay,
                        actualDestination = chosen,
                        sim      = sim,
                        previous = this
                    });
                }
            }

            // clear finished
            relay.finishedCTSs.Clear();
        }
Ejemplo n.º 27
0
 protected SyntaxBase(SyntaxBase syntaxBase)
 {
     Relay = syntaxBase.Relay.ToList();
     Relay.Add(syntaxBase);
     Parameters      = syntaxBase.Parameters;
     LocalParameters = new List <string>();
     ParameterCount  = syntaxBase.ParameterCount;
 }
Ejemplo n.º 28
0
        public MeadowApp()
        {
            Console.WriteLine("Initializing...");

            relay = new Relay(Device.CreateDigitalOutputPort(Device.Pins.D02));

            TestRelay();
        }
Ejemplo n.º 29
0
        public ActionResult DeleteConfirmed(Guid id)
        {
            Relay relay = db.Relays.Find(id);

            db.Relays.Remove(relay);
            db.SaveChanges();
            return(RedirectToAction("Details", "Devices", new { id = relay.DeviceID }));
        }
Ejemplo n.º 30
0
 public Neuron(int idInput, Relay relayInput)
 {
     id = idInput;
     connectedSynapses = new List <Synapse>();
     relay             = relayInput;
     name  = assignName(id, relay);
     value = 0;
 }
Ejemplo n.º 31
0
        public ActionResult DeleteConfirmed(string id)
        {
            Relay relay = db.Relays.Find(id);

            db.Relays.Remove(relay);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 32
0
    //====== EVOLVE NET HELPER FUNCTIONS ====== //
    public void addNeuron(Relay relayInput)
    {
        // addNeuron ----- adds a neuron to the appropriate neuron sublist.
        int    newNeuronID = neurons[0].Count + neurons[1].Count + neurons[2].Count;
        Neuron neuron      = new Neuron(newNeuronID, relayInput);

        assignNeuronToList(neuron, relayInput);
    }
Ejemplo n.º 33
0
            public void TestOn()
            {

                Relay relay = new Relay(0, Relay.Direction.Both);
                relay.Set(Relay.Value.On);
                Assert.AreEqual(true, SimData.Relay[0].Forward);
                Assert.AreEqual(true, SimData.Relay[0].Reverse);
                relay.Dispose();
            }
 private void Initialize()
 {
     lock (this)
     {
         if (!initialized)
         {
             relay = GiveRelay();
             inputOne = GiveInputOne();
             inputTwo = GiveInputTwo();
             initialized = true;
         }
     }
 }
Ejemplo n.º 35
0
        public void TestCreateAll()
        {
            List<Relay> relays = new List<Relay>();
            for (int i = 0; i < RelayChannels; i++)
            {
                Relay r = new Relay(i);
                relays.Add(r);
            }

            foreach (var relay in relays)
            {
                relay.Dispose();
            }
        }
Ejemplo n.º 36
0
        public PhysicalHellevator()
        {
            CallButton = new Button(FEZ_Pin.Digital.Di43);
            PanelButton = new Button(FEZ_Pin.Digital.Di41);
            ModeButton = new Button(FEZ_Pin.Digital.Di21);

            PatriotLight = new RelayPatriotLight(FEZ_Pin.Digital.Di52, FEZ_Pin.Digital.Di50, FEZ_Pin.Digital.Di48);
            Fan = new Relay(FEZ_Pin.Digital.Di46);

            RopeLight = new Relay(FEZ_Pin.Digital.Di28);
            DriveWheel = new Relay(FEZ_Pin.Digital.Di26);
            SmokeMachine = new Relay(FEZ_Pin.Digital.Di24);

            ElevatorEffects = new SerialLedRope("COM2", 29);
            CeilingEffects = new SerialLedRope("COM4", 60);
            FloorIndicator = new SpiFloorIndicator(SPI.SPI_module.SPI2, FEZ_Pin.Digital.Di34);

            InteriorZone = new SerialAudioZone(audioCoordinator, 1, FEZ_Pin.Digital.Di5);
            ExteriorZone = new SerialAudioZone(audioCoordinator, 2, FEZ_Pin.Digital.Di10);

            CarriageDoor = new Door();

            lcd.Initialize();
        }
Ejemplo n.º 37
0
            public void TestForward()
            {

                Relay relay = new Relay(0, Relay.Direction.Reverse);
                Assert.Throws<InvalidValueException>(() =>
                {
                    relay.Set(Relay.Value.Forward);
                });
                relay.Dispose();
            }
Ejemplo n.º 38
0
        public static bool Load()
        {
            XmlSerializer deserializer = new XmlSerializer(typeof(HeatingData));
            TextReader reader = new StreamReader(@"C:\Temp\HeatingData.xml");

            Logger.Log(Logger.LOGLEVEL_INFO, "About to load init data");
            object obj = deserializer.Deserialize(reader);
            theData = (HeatingData)obj;
            reader.Close();
            Logger.Log(Logger.LOGLEVEL_INFO, "Init data loaded");

            // Deserializer looses references - creates new objects so clear down and rebuild
            for (int i = 0; i < Rooms.Count; i++)
            {
                Rooms[i].Heaters.Clear();
                Rooms[i].Sensors.Clear();
            }

            for (int i = 0; i < FloorHeats.Count; i++)
            {
                FloorHeats[i].Sensors.Clear();
            }

            for (int i = 0; i < TowelRads.Count; i++)
            {
                TowelRads[i].Sensors.Clear();
            }

            // Add heaters to rooms
            for (int i = 0; i < FloorHeats.Count; i++)
            {
                for (int j = 0; j < Rooms.Count; j++)
                {
                    if (Rooms[j].Id == FloorHeats[i].RoomId)
                    {
                        Rooms[j].Heaters.Add(FloorHeats[i]);
                        break;
                    }
                }
            }
            for (int i = 0; i < TowelRads.Count; i++)
            {
                for (int j = 0; j < Rooms.Count; j++)
                {
                    if (Rooms[j].Id == TowelRads[i].RoomId)
                    {
                        Rooms[j].Heaters.Add(TowelRads[i]);
                        break;
                    }
                }
            }

            // Add sensors to rooms and heaters
            for (int i = 0; i < RoomSensors.Count; i++)
            {
                for (int j = 0; j < Rooms.Count; j++)
                {
                    if (Rooms[j].Id == RoomSensors[i].RoomId)
                    {
                        Rooms[j].Sensors.Add(RoomSensors[i]);
                        for (int k = 0; k < Rooms[j].Heaters.Count; k++)
                        {
                            Rooms[j].Heaters[k].Sensors.Add(RoomSensors[i]);
                        }
                        break;
                    }
                }
            }
            for (int i = 0; i < FloorSensors.Count; i++)
            {
                for (int j = 0; j < Rooms.Count; j++)
                {
                    if (Rooms[j].Id == FloorSensors[i].RoomId)
                    {
                        Rooms[j].Sensors.Add(FloorSensors[i]);
                        for (int k = 0; k < Rooms[j].Heaters.Count; k++)
                        {
                            Rooms[j].Heaters[k].Sensors.Add(FloorSensors[i]);
                        }
                        break;
                    }
                }
            }

            // Clear and then populate relay set
            Relay oRelay;
            theData.theRelays.Clear();
            for (int i = 0; i < FloorHeats.Count; i++)
            {
                oRelay = new Relay(FloorHeats[i].Name, FloorHeats[i].RelayAddress);
                theData.theRelays.Add(oRelay);
            }
            for (int i = 0; i < TowelRads.Count; i++)
            {
                oRelay = new Relay(TowelRads[i].Name, TowelRads[i].RelayAddress);
                theData.theRelays.Add(oRelay);
            }
            theData.theRelays.Sort();

            Logger.Log(Logger.LOGLEVEL_INFO, "Init data processed");
            return true;
        }
Ejemplo n.º 39
0
 public RelayPatriotLight(FEZ_Pin.Digital redPin, FEZ_Pin.Digital whitePin, FEZ_Pin.Digital bluePin)
 {
     red = new Relay(redPin);
     white = new Relay(whitePin);
     blue = new Relay(bluePin);
 }
Ejemplo n.º 40
0
            public void TestOff()
            {

                Relay relay = new Relay(0, Relay.Direction.Reverse);
                relay.Set(Relay.Value.Off);
                Assert.AreEqual(false, SimData.Relay[0].Forward);
                Assert.AreEqual(false, SimData.Relay[0].Reverse);
                relay.Dispose();
            }