Loading src/com/elphel/vdt/VerilogUtils.java +13 −7 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import java.util.ArrayList; import java.util.List; //import java.util.Map; import com.elphel.vdt.ui.variables.SelectedResourceManager; import com.elphel.vdt.veditor.VerilogPlugin; import com.elphel.vdt.veditor.document.HdlDocument; Loading Loading @@ -100,6 +101,7 @@ public class VerilogUtils { System.out.println("database is null, and no Verilog file is selected to create one."); return null; } // getChosenVerilogFile() sometimes returns project (after switching projects) hdlDocument=new VerilogDocument(project, (IFile) SelectedResourceManager.getDefault().getChosenVerilogFile()); return hdlDocument.getOutlineDatabase(); /* will create a new one if does not exist */ } Loading Loading @@ -193,14 +195,18 @@ public class VerilogUtils { if (toolDefine != null) { OutlineDatabase outlineDatabase=new OutlineDatabase(project); // new OutlineDatabase just for this scan outlineDatabase.scanFilesWithDefine(topFile,toolDefine); // System.out.println("-->>>VerilogUtils.getDependencies number of files="+outlineDatabase.getDatabaseFileList().length); // for (int i=0; i<outlineDatabase.getDatabaseFileList().length; i++){ // System.out.println(i+": "+outlineDatabase.getDatabaseFileList()[i]); // } if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_CLOSURE)) { System.out.println("-->>>VerilogUtils.getDependencies number of files="+outlineDatabase.getDatabaseFileList().length); for (int i=0; i<outlineDatabase.getDatabaseFileList().length; i++){ System.out.println(i+": "+outlineDatabase.getDatabaseFileList()[i]); } } IFile[] topFiles = {topFile}; return outlineDatabase.getClosureSorted(topFiles); } else { // System.out.println("===---VerilogUtils.getDependencies("+topFile+") - using editor depends"); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_CLOSURE)) { System.out.println("===---VerilogUtils.getDependencies("+topFile+") - using editor depends"); } return getDependencies(new IFile [] {topFile}); } } Loading src/com/elphel/vdt/core/tools/generators/FilteredSourceListGenerator.java +23 −3 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ import org.eclipse.core.resources.IResource; //import com.elphel.vdt.VDT; import com.elphel.vdt.VerilogUtils; import com.elphel.vdt.core.tools.params.FormatProcessor; Loading @@ -48,6 +49,8 @@ import com.elphel.vdt.core.tools.params.Tool; import com.elphel.vdt.ui.MessageUI; //import com.elphel.vdt.core.verilog.VerilogUtils; import com.elphel.vdt.ui.variables.SelectedResourceManager; import com.elphel.vdt.veditor.VerilogPlugin; import com.elphel.vdt.veditor.preference.PreferenceStrings; /** * Generate the file name list of dependency closure for last selected Loading Loading @@ -84,7 +87,9 @@ public class FilteredSourceListGenerator extends AbstractGenerator { // System.out.println(", tool="+tool+" tool name="+((tool!=null)?tool.getName():null)); if (tool != null) { ignoreFilter=tool.getIgnoreFilter(); // System.out.println("FilteredSourceListGenerator().getStringValue(): tool="+tool.getName()+", ignoreFilter="+ignoreFilter); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_CLOSURE)) { System.out.println("FilteredSourceListGenerator().getStringValue(): tool="+tool.getName()+", ignoreFilter="+ignoreFilter); } topFile = tool.getTopFile(); toolDefine = tool.getDefine(); if ((toolDefine == null) || (toolDefine == "")) { Loading @@ -92,7 +97,9 @@ public class FilteredSourceListGenerator extends AbstractGenerator { else toolDefine = ""; // reparse for this tool - top file may have different defines } if (!tool.needsTreeReparse()) toolDefine = null; // System.out.println("topFile="+topFile+ " toolDefine="+toolDefine); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_CLOSURE)) { System.out.println("topFile="+topFile+ " toolDefine="+toolDefine); } } else { System.out.println("FilteredSourceListGenerator(): topProcessor.getCurrentTool() is null"); } Loading Loading @@ -121,16 +128,29 @@ public class FilteredSourceListGenerator extends AbstractGenerator { if (resource != null && resource.getType() == IResource.FILE) { IFile[] files = VerilogUtils.getDependencies((IFile)resource, toolDefine); // returned just the same x353_1.tf // System.out.println("FilteredSourceListGenerator(): resource = "+resource); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_CLOSURE)) { for (IFile fl: files) { System.out.println("FilteredSourceListGenerator()"+fl); } System.out.println("FilteredSourceListGenerator(): resource = "+resource); } List<String> fileList=new ArrayList<String>(); for (int i=0; i < files.length; i++) { String fileName=files[i].getProjectRelativePath().toOSString(); //.getName(); if ((ignorePattern!=null) &&ignorePattern.matcher(fileName).matches()) { // System.out.println("FilteredSourceListGenerator() IGNORE "+fileName+" ("+files[i]+")"); continue; } fileList.add(fileName); // System.out.println("FilteredSourceListGenerator() ADDED "+fileName+" ("+files[i]+")"); } file_names=fileList.toArray(new String[0]); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_CLOSURE)) { for (String fn: file_names) { System.out.println(String.format("FilteredSourceListGenerator() %s ",fn)); } } } else { // fault("There is no selected project"); System.out.println(getName()+": no project selected"); Loading src/com/elphel/vdt/core/tools/params/ToolSequence.java +5 −0 Original line number Diff line number Diff line Loading @@ -53,6 +53,7 @@ import com.elphel.vdt.ui.options.FilteredFileSelector; import com.elphel.vdt.ui.variables.SelectedResourceManager; import com.elphel.vdt.ui.views.DesignFlowView; import com.elphel.vdt.veditor.VerilogPlugin; import com.elphel.vdt.veditor.parser.OutlineDatabase; import com.elphel.vdt.veditor.preference.PreferenceStrings; import java.io.File; Loading Loading @@ -734,9 +735,13 @@ java.lang.NullPointerException String fullPath, String ignoreFilter) throws CoreException { if (!okToRun()) return; // Just testing:// // OutlineDatabase.getProjectsDatabase(SelectedResourceManager.getDefault().getSelectedProject()).invalidateToolCache(); // Set this tool dirty (not to try reports on this tool before it ran) DEBUG_PRINT("launchToolSequence("+tool.getName()+", setting its state to \"Dirty\""); tool.setDirty(true); setStateProvides(); // just testing // tool.setDesignFlowView(designFlowView); Loading src/com/elphel/vdt/ui/variables/SelectedResourceManager.java +2 −1 Original line number Diff line number Diff line Loading @@ -364,6 +364,7 @@ public class SelectedResourceManager implements IWindowListener, ISelectionListe return (fChosenVerilogFile!=null)?fChosenVerilogFile:fSelectedVerilogFile; } else { System.out.println("Wrong getChosenVerilogFile="+rslt+" for project "+project); fChosenVerilogFile = null; // invalidate if (fSelectedVerilogFile==null) return null; if (project.getFullPath().toPortableString().equals(fSelectedVerilogFile.getProject().getFullPath().toPortableString())){ System.out.println("Using: "+fSelectedVerilogFile); Loading src/com/elphel/vdt/ui/views/DesignFlowView.java +9 −2 Original line number Diff line number Diff line Loading @@ -1271,7 +1271,14 @@ public class DesignFlowView extends ViewPart implements ISelectionListener { // Initialize VEditor database build IResource HDLFile=SelectedResourceManager.getDefault().getChosenVerilogFile(); // restore properties from the project, overwrite global ones restoreCurrentState(selectedResource.getProject()); // null OK IProject project; if (selectedResource == null) { project = SelectedResourceManager.getDefault().getSelectedProject(); } else { project = HDLFile.getProject(); } // restoreCurrentState(selectedResource.getProject()); // null OK restoreCurrentState(project); // null OK if ((HDLFile!=null) && HDLFile.exists()){ toolSequence.setUnfinishedBoot(memento,true); Loading Loading
src/com/elphel/vdt/VerilogUtils.java +13 −7 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import java.util.ArrayList; import java.util.List; //import java.util.Map; import com.elphel.vdt.ui.variables.SelectedResourceManager; import com.elphel.vdt.veditor.VerilogPlugin; import com.elphel.vdt.veditor.document.HdlDocument; Loading Loading @@ -100,6 +101,7 @@ public class VerilogUtils { System.out.println("database is null, and no Verilog file is selected to create one."); return null; } // getChosenVerilogFile() sometimes returns project (after switching projects) hdlDocument=new VerilogDocument(project, (IFile) SelectedResourceManager.getDefault().getChosenVerilogFile()); return hdlDocument.getOutlineDatabase(); /* will create a new one if does not exist */ } Loading Loading @@ -193,14 +195,18 @@ public class VerilogUtils { if (toolDefine != null) { OutlineDatabase outlineDatabase=new OutlineDatabase(project); // new OutlineDatabase just for this scan outlineDatabase.scanFilesWithDefine(topFile,toolDefine); // System.out.println("-->>>VerilogUtils.getDependencies number of files="+outlineDatabase.getDatabaseFileList().length); // for (int i=0; i<outlineDatabase.getDatabaseFileList().length; i++){ // System.out.println(i+": "+outlineDatabase.getDatabaseFileList()[i]); // } if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_CLOSURE)) { System.out.println("-->>>VerilogUtils.getDependencies number of files="+outlineDatabase.getDatabaseFileList().length); for (int i=0; i<outlineDatabase.getDatabaseFileList().length; i++){ System.out.println(i+": "+outlineDatabase.getDatabaseFileList()[i]); } } IFile[] topFiles = {topFile}; return outlineDatabase.getClosureSorted(topFiles); } else { // System.out.println("===---VerilogUtils.getDependencies("+topFile+") - using editor depends"); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_CLOSURE)) { System.out.println("===---VerilogUtils.getDependencies("+topFile+") - using editor depends"); } return getDependencies(new IFile [] {topFile}); } } Loading
src/com/elphel/vdt/core/tools/generators/FilteredSourceListGenerator.java +23 −3 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ import org.eclipse.core.resources.IResource; //import com.elphel.vdt.VDT; import com.elphel.vdt.VerilogUtils; import com.elphel.vdt.core.tools.params.FormatProcessor; Loading @@ -48,6 +49,8 @@ import com.elphel.vdt.core.tools.params.Tool; import com.elphel.vdt.ui.MessageUI; //import com.elphel.vdt.core.verilog.VerilogUtils; import com.elphel.vdt.ui.variables.SelectedResourceManager; import com.elphel.vdt.veditor.VerilogPlugin; import com.elphel.vdt.veditor.preference.PreferenceStrings; /** * Generate the file name list of dependency closure for last selected Loading Loading @@ -84,7 +87,9 @@ public class FilteredSourceListGenerator extends AbstractGenerator { // System.out.println(", tool="+tool+" tool name="+((tool!=null)?tool.getName():null)); if (tool != null) { ignoreFilter=tool.getIgnoreFilter(); // System.out.println("FilteredSourceListGenerator().getStringValue(): tool="+tool.getName()+", ignoreFilter="+ignoreFilter); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_CLOSURE)) { System.out.println("FilteredSourceListGenerator().getStringValue(): tool="+tool.getName()+", ignoreFilter="+ignoreFilter); } topFile = tool.getTopFile(); toolDefine = tool.getDefine(); if ((toolDefine == null) || (toolDefine == "")) { Loading @@ -92,7 +97,9 @@ public class FilteredSourceListGenerator extends AbstractGenerator { else toolDefine = ""; // reparse for this tool - top file may have different defines } if (!tool.needsTreeReparse()) toolDefine = null; // System.out.println("topFile="+topFile+ " toolDefine="+toolDefine); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_CLOSURE)) { System.out.println("topFile="+topFile+ " toolDefine="+toolDefine); } } else { System.out.println("FilteredSourceListGenerator(): topProcessor.getCurrentTool() is null"); } Loading Loading @@ -121,16 +128,29 @@ public class FilteredSourceListGenerator extends AbstractGenerator { if (resource != null && resource.getType() == IResource.FILE) { IFile[] files = VerilogUtils.getDependencies((IFile)resource, toolDefine); // returned just the same x353_1.tf // System.out.println("FilteredSourceListGenerator(): resource = "+resource); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_CLOSURE)) { for (IFile fl: files) { System.out.println("FilteredSourceListGenerator()"+fl); } System.out.println("FilteredSourceListGenerator(): resource = "+resource); } List<String> fileList=new ArrayList<String>(); for (int i=0; i < files.length; i++) { String fileName=files[i].getProjectRelativePath().toOSString(); //.getName(); if ((ignorePattern!=null) &&ignorePattern.matcher(fileName).matches()) { // System.out.println("FilteredSourceListGenerator() IGNORE "+fileName+" ("+files[i]+")"); continue; } fileList.add(fileName); // System.out.println("FilteredSourceListGenerator() ADDED "+fileName+" ("+files[i]+")"); } file_names=fileList.toArray(new String[0]); if (VerilogPlugin.getPreferenceBoolean(PreferenceStrings.DEBUG_CLOSURE)) { for (String fn: file_names) { System.out.println(String.format("FilteredSourceListGenerator() %s ",fn)); } } } else { // fault("There is no selected project"); System.out.println(getName()+": no project selected"); Loading
src/com/elphel/vdt/core/tools/params/ToolSequence.java +5 −0 Original line number Diff line number Diff line Loading @@ -53,6 +53,7 @@ import com.elphel.vdt.ui.options.FilteredFileSelector; import com.elphel.vdt.ui.variables.SelectedResourceManager; import com.elphel.vdt.ui.views.DesignFlowView; import com.elphel.vdt.veditor.VerilogPlugin; import com.elphel.vdt.veditor.parser.OutlineDatabase; import com.elphel.vdt.veditor.preference.PreferenceStrings; import java.io.File; Loading Loading @@ -734,9 +735,13 @@ java.lang.NullPointerException String fullPath, String ignoreFilter) throws CoreException { if (!okToRun()) return; // Just testing:// // OutlineDatabase.getProjectsDatabase(SelectedResourceManager.getDefault().getSelectedProject()).invalidateToolCache(); // Set this tool dirty (not to try reports on this tool before it ran) DEBUG_PRINT("launchToolSequence("+tool.getName()+", setting its state to \"Dirty\""); tool.setDirty(true); setStateProvides(); // just testing // tool.setDesignFlowView(designFlowView); Loading
src/com/elphel/vdt/ui/variables/SelectedResourceManager.java +2 −1 Original line number Diff line number Diff line Loading @@ -364,6 +364,7 @@ public class SelectedResourceManager implements IWindowListener, ISelectionListe return (fChosenVerilogFile!=null)?fChosenVerilogFile:fSelectedVerilogFile; } else { System.out.println("Wrong getChosenVerilogFile="+rslt+" for project "+project); fChosenVerilogFile = null; // invalidate if (fSelectedVerilogFile==null) return null; if (project.getFullPath().toPortableString().equals(fSelectedVerilogFile.getProject().getFullPath().toPortableString())){ System.out.println("Using: "+fSelectedVerilogFile); Loading
src/com/elphel/vdt/ui/views/DesignFlowView.java +9 −2 Original line number Diff line number Diff line Loading @@ -1271,7 +1271,14 @@ public class DesignFlowView extends ViewPart implements ISelectionListener { // Initialize VEditor database build IResource HDLFile=SelectedResourceManager.getDefault().getChosenVerilogFile(); // restore properties from the project, overwrite global ones restoreCurrentState(selectedResource.getProject()); // null OK IProject project; if (selectedResource == null) { project = SelectedResourceManager.getDefault().getSelectedProject(); } else { project = HDLFile.getProject(); } // restoreCurrentState(selectedResource.getProject()); // null OK restoreCurrentState(project); // null OK if ((HDLFile!=null) && HDLFile.exists()){ toolSequence.setUnfinishedBoot(memento,true); Loading