示例#1
0
文件: IO_FD_Main.cs 项目: x893/WDS
        public static FirmwareItem[] GetFirmwareAvailable(string location, DeviceDescriptor connectedDeviceDescriptor, bool checkFwType, string fwtype, bool a_checkOnlyDevice, FirmwareTargetEnvironment[] targetEnvironmentSet)
        {
            if (!Directory.Exists(location))
                return new FirmwareItem[0];
            if ((connectedDeviceDescriptor.FirmwareType != null) && connectedDeviceDescriptor.FirmwareType.Name.Contains("ENW"))
                connectedDeviceDescriptor.FirmwareType.Name = connectedDeviceDescriptor.FirmwareType.Name.Replace("ENW", "NWD");

            string[] files = Directory.GetFiles(location, "*.whf");
            ArrayList list = new ArrayList();
            foreach (string str in files)
            {
                FirmwareItem firmwareItem = GetFirmwareItem(Path.Combine(location, Path.GetFileName(str)));
                if (new List<FirmwareTargetEnvironment>(targetEnvironmentSet).Contains(firmwareItem.targetEnvironment))
                    foreach (CompatibleDeviceDescriptor descriptor in firmwareItem.supportedDeviceList)
                        if (descriptor.IsCompatible(connectedDeviceDescriptor, HwVersion.Upper, FwVersion.Lower, a_checkOnlyDevice) && (firmwareItem.type.Name != "ENW_Slave"))
                        {
                            if (!checkFwType)
                                list.Add(firmwareItem);
                            else if ((checkFwType && (fwtype == null)) && (connectedDeviceDescriptor.FirmwareType.Name == firmwareItem.type.Name))
                                list.Add(firmwareItem);
                            else if ((checkFwType && (fwtype != null)) && (fwtype == firmwareItem.type.Name))
                                list.Add(firmwareItem);
                        }
            }
            list.Sort();
            return (FirmwareItem[]) list.ToArray(typeof(FirmwareItem));
        }
示例#2
0
 private void initProjectList()
 {
     this._mainFDControl = new IO_FD_Main(this._adtRec);
     FirmwareTargetEnvironment[] targetEnvironmentSet = new FirmwareTargetEnvironment[2];
     targetEnvironmentSet[0] = FirmwareTargetEnvironment.System;
     this._firmwareItems = this._mainFDControl.GetFirmwareAvailable(Path.Combine(Application.StartupPath, "Firmware"), targetEnvironmentSet);
     string name = "";
     if (this._selectedProject != null)
     {
         name = this._selectedProject.Name;
     }
     this.lstSelectProject.Items.Clear();
     foreach (Project project in this._projectDescriptor)
     {
         if ((this._chipType != "Si4355") || (project.ChipType == this._chipType))
         {
             if (project.LabEvaluation.Enabled)
             {
                 bool flag = false;
                 foreach (FirmwareItem item in this._firmwareItems)
                 {
                     if (item.name.Contains("Configuration and evaluation"))
                     {
                         project.LabEvaluation.Firmware = item;
                         flag = true;
                     }
                 }
                 if (!flag)
                 {
                     project.LabEvaluation.Enabled = false;
                 }
             }
             if (project.FirmwareLoad.Enabled)
             {
                 bool flag2 = false;
                 foreach (FirmwareItem item2 in this._firmwareItems)
                 {
                     if (project.Name == item2.name)
                     {
                         project.FirmwareLoad.Firmware = item2;
                         flag2 = true;
                     }
                 }
                 if (!flag2)
                 {
                     project.FirmwareLoad.Enabled = false;
                 }
             }
             if (((this.cbbModulationSource.SelectedIndex == 0) && ((this.rdbFixedPacketLen.Checked && project.Filter.IsFixedPacketLen) || (this.rdbVariablePacketLen.Checked && project.Filter.IsVariablePacketLen))) || ((this.cbbModulationSource.SelectedIndex == 1) && project.Filter.IsDirectMode))
             {
                 ListViewItem item3 = project.getSi4455RcListViewItem();
                 this.lstSelectProject.Items.Add(item3);
             }
         }
     }
     if (this.lstSelectProject.Items.Count > 0)
     {
         this.lstSelectProject.Items[0].Selected = true;
     }
     for (int i = 0; (name != "") && (i < this.lstSelectProject.Items.Count); i++)
     {
         if (((Project) this.lstSelectProject.Items[i].Tag).Name == name)
         {
             this.lstSelectProject.Items[i].Selected = true;
             return;
         }
     }
 }
示例#3
0
 private void initProjectList()
 {
     _mainFDControl = new IO_FD_Main(_adtRec);
     FirmwareTargetEnvironment[] targetEnvironmentSet = new FirmwareTargetEnvironment[2];
     targetEnvironmentSet[0] = FirmwareTargetEnvironment.System;
     _firmwareItems = _mainFDControl.GetFirmwareAvailable(Path.Combine(Application.StartupPath, "Firmware"), targetEnvironmentSet);
     lstSelectProject.Items.Clear();
     foreach (PRO2ProjectDescriptor descriptor in _projectDescriptorList)
     {
         bool flag = false;
         foreach (Chip chip in descriptor.SupportedChips)
         {
             if ((chip.ChipType == _chipType) && (chip.ChipRevision == _chipRev))
             {
                 flag = true;
                 break;
             }
         }
         if (flag)
         {
             bool enabled = descriptor.SaveBatch.Enabled;
             if (descriptor.ConfigureAndEvaluate.Enabled)
             {
                 bool flag2 = false;
                 foreach (FirmwareItem item in _firmwareItems)
                 {
                     if (item.name.Contains("Configuration and evaluation"))
                     {
                         descriptor.ConfigureAndEvaluate.Firmware = item;
                         flag2 = true;
                     }
                 }
                 if (!flag2)
                 {
                     descriptor.ConfigureAndEvaluate.Enabled = false;
                 }
             }
             if (descriptor.DownloadProject.Enabled)
             {
                 bool flag3 = false;
                 foreach (FirmwareItem item2 in _firmwareItems)
                 {
                     if (descriptor.Name == item2.name)
                     {
                         descriptor.DownloadProject.Firmware = item2;
                         flag3 = true;
                     }
                 }
                 if (!flag3)
                 {
                     descriptor.DownloadProject.Enabled = false;
                 }
             }
             if (descriptor.GenerateSource.Enabled && !Directory.Exists(Path.Combine(Application.StartupPath, Path.Combine(NewWDS.Applications.App_Common.GenerateSourceDialog.GenerateSourceDialog.PROJECT_CONTAINER_DIRECTORY, descriptor.GenerateSource.DirectoryName))))
             {
                 descriptor.GenerateSource.Enabled = false;
             }
             if ((descriptor.SaveBatch.Enabled || descriptor.ConfigureAndEvaluate.Enabled) || (descriptor.DownloadProject.Enabled || descriptor.GenerateSource.Enabled))
             {
                 ListViewItem item3 = descriptor.getSi4460RcaListViewItem();
                 lstSelectProject.Items.Add(item3);
             }
         }
     }
     if (lstSelectProject.Items.Count > 0)
     {
         lstSelectProject.Items[0].Selected = true;
     }
 }
示例#4
0
文件: IO_FD_Main.cs 项目: x893/WDS
 public FirmwareItem[] GetFirmwareAvailable(string location, FirmwareTargetEnvironment[] targetEnvironmentSet)
 {
     return GetFirmwareAvailable(location, this._adtRecord.DeviceInfo, false, null, true, targetEnvironmentSet);
 }
示例#5
0
文件: IO_FD_Main.cs 项目: x893/WDS
 public static bool NewFirmwareExists(
     string firmwarePath,
     DeviceDescriptor connectedDeviceDescriptor,
     bool checkFwType,
     string fwType,
     out FirmwareItem newFirmware,
     FirmwareTargetEnvironment[] targetEnvironmentSet
     )
 {
     FirmwareItem[] itemArray = GetFirmwareAvailable(
         firmwarePath,
         connectedDeviceDescriptor,
         checkFwType,
         fwType,
         true,
         targetEnvironmentSet
         );
     if (itemArray.Length != 0)
     {
         newFirmware = itemArray[itemArray.Length - 1];
         if (fwType != null && !(connectedDeviceDescriptor.FirmwareType.Name == fwType))
             return true;
         if (newFirmware.version.VersionNumber > connectedDeviceDescriptor.FirmwareVersion.VersionNumber)
             return true;
     }
     else
         newFirmware = null;
     return false;
 }