Esempio n. 1
0
        public void addUpdateDI(string operation, string id, string description, string address, int scantime, bool onoffscan, string driver)
        {
            lock (db.DIs)
            {
                if (operation == "add")
                {
                    DI novi = new DI(id, description, address, scantime, onoffscan, driver);
                    db.DIs.Add(novi);

                    TagProcessing.DItags.Add(novi.Id, novi);
                    TagProcessing.DIthreads.Add(novi.Id, new Thread(() => TagProcessing.readDI(novi.Id)));
                    TagProcessing.DIthreads[novi.Id].Start();

                    db.SaveChanges();
                    DataManipulator.saveData();
                    return;
                }
                DI tag = getByIdDI(id);
                tag.Description = description;
                tag.Address     = address;
                tag.ScanTime    = scantime;
                tag.OnOffScan   = onoffscan;
                tag.Driver      = driver;
                db.SaveChanges();
                DataManipulator.saveData();

                TagProcessing.DItags.Remove(tag.Id);
                TagProcessing.DItags.Add(tag.Id, tag);
                TagProcessing.DIthreads.Remove(tag.Id);
                TagProcessing.DIthreads.Add(tag.Id, new Thread(() => TagProcessing.readAI(tag.Id)));
                TagProcessing.DIthreads[tag.Id].Start();

                onChangeNotification.Invoke("Operation succesful.");
            }
        }
Esempio n. 2
0
        public void addUpdateAI(string operation, string id, string description, string address, int scantime, bool onoffscan, double lowlimit, double highlimit, string units, string driver)
        {
            lock (db.AIs)
            {
                if (operation == "add")
                {
                    AI novi = new AI(id, description, address, scantime, onoffscan, lowlimit, highlimit, units, driver);
                    db.AIs.Add(novi);

                    TagProcessing.AItags.Add(novi.Id, novi);
                    TagProcessing.AIthreads.Add(novi.Id, new Thread(() => TagProcessing.readAI(novi.Id)));
                    TagProcessing.AIthreads[novi.Id].Start();

                    db.SaveChanges();
                    DataManipulator.saveData();
                    return;
                }
                AI tag = getByIdAI(id);
                tag.Description = description;
                tag.Address     = address;
                tag.ScanTime    = scantime;
                tag.OnOffScan   = onoffscan;
                tag.LowLimit    = lowlimit;
                tag.HighLimit   = highlimit;
                tag.Units       = units;
                tag.Driver      = driver;
                db.SaveChanges();
                DataManipulator.saveData();
                TagProcessing.AItags.Remove(tag.Id);
                TagProcessing.AItags.Add(tag.Id, tag);
                TagProcessing.AIthreads.Remove(tag.Id);
                TagProcessing.AIthreads.Add(tag.Id, new Thread(() => TagProcessing.readAI(tag.Id)));
                TagProcessing.AIthreads[tag.Id].Start();
                onChangeNotification.Invoke("Operation succesful.");
            }
        }