protected override void DoCommandAction() { FPGA.FPGATypes.AssertBackendType(FPGA.FPGATypes.BackendType.ISE, FPGA.FPGATypes.BackendType.Vivado); if (FPGA.TileSelectionManager.Instance.NumberOfSelectedTiles == 0) { OutputManager.WriteOutput("Warning: No tiles selected"); } NetlistContainer netlistContainer = (NetlistContainer)GetNetlistContainer(); // store selected parts in outDesign NetlistContainer outContainer = netlistContainer.GetSelectedDesignElements(); // write design to file StreamWriter sw = new StreamWriter(OutFile, false); outContainer.WriteCodeToFile(sw); sw.Close(); if (FPGA.FPGA.Instance.BackendType == FPGA.FPGATypes.BackendType.ISE) { if (!string.IsNullOrEmpty(BinaryNetlist)) { SaveXDLLibraryElementAsBinaryLibraryElement saveCmd = new SaveXDLLibraryElementAsBinaryLibraryElement(); saveCmd.FileName = BinaryNetlist; saveCmd.XDLFileName = OutFile; CommandExecuter.Instance.Execute(saveCmd); } } else if (FPGA.FPGA.Instance.BackendType == FPGA.FPGATypes.BackendType.Vivado) { if (!string.IsNullOrEmpty(BinaryNetlist)) { // TODO //SaveXDLLibraryElementAsBinaryLibraryElement fuer SetResourceShapeInfo dann weiter relokieren } } }