예제 #1
0
        private void UpdateDeviceCatalogue(object stateInfo)
        {
            CANFrame frame = (CANFrame)stateInfo;

            DeviceCatalogueInfo dci = frame.ToDeviceCatalogueInfo();

            if (dci == null)
            {
                return;
            }

            CNXLog.InfoFormat("DeviceCataloge {0}", dci.ToString());
            DeviceCatalogue.CatalogueChangeType catalogeUpdated = mDeviceCatalogue.UpdateDeviceCatalogue(dci);
            if (catalogeUpdated != DeviceCatalogue.CatalogueChangeType.NONE)
            {
                CNXLog.InfoFormat("DeviceCataloge Updating calalogue.");
                if (catalogeUpdated == DeviceCatalogue.CatalogueChangeType.EQUIPMENT)
                {
                    // persist the catalogue
                    PersistCatalogue();
                }

                EquipmentChangedEventArgs a = new EquipmentChangedEventArgs(mDeviceCatalogue.EquipmentMask, mDeviceCatalogue.EquipmentStatus);
                OnRaiseEquipmentChangedEvent(a);
            }
        }