Update of /cvsroot/ccmtools/ccmtools/src/ccmtools/ui
In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv32500/src/ccmtools/ui
Modified Files:
Main.java
Log Message:
C++ assemblies
Index: Main.java
===================================================================
RCS file: /cvsroot/ccmtools/ccmtools/src/ccmtools/ui/Main.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** Main.java 19 Jan 2007 12:07:31 -0000 1.6
--- Main.java 20 Feb 2007 13:38:50 -0000 1.7
***************
*** 27,31 ****
import java.util.List;
import java.util.logging.Logger;
-
import ccmtools.CcmtoolsException;
import ccmtools.Constants;
--- 27,30 ----
***************
*** 34,41 ****
--- 33,42 ----
import ccmtools.CodeGenerator.GraphTraverser;
import ccmtools.CodeGenerator.TemplateHandler;
+ import ccmtools.CppGenerator.CppAssemblyGenerator;
import ccmtools.CppGenerator.CppLocalGenerator;
import ccmtools.CppGenerator.CppLocalTestGenerator;
import ccmtools.CppGenerator.CppRemoteGenerator;
import ccmtools.CppGenerator.CppRemoteTestGenerator;
+ import ccmtools.parser.assembly.metamodel.Model;
import ccmtools.parser.idl.metamodel.CcmModelHelper;
import ccmtools.parser.idl.metamodel.BaseIDL.MContainer;
***************
*** 60,68 ****
private static String includePath;
! private static List<String> filenames;
private static File outputDirectory = new File(System.getProperty("user.dir"));
private static File baseOutputDirectory = new File(outputDirectory, "");
private static int generateFlags = 0;
--- 61,73 ----
private static String includePath;
! private static List<String> idl_filenames;
! private static List<String> assembly_filenames;
private static File outputDirectory = new File(System.getProperty("user.dir"));
private static File baseOutputDirectory = new File(outputDirectory, "");
private static int generateFlags = 0;
+
+ // assembly model
+ private static Model assemblies;
***************
*** 166,174 ****
}
! MContainer ccmModel = null;
! for(Iterator f = filenames.iterator(); f.hasNext();)
{
String fileName = (String)f.next();
! ccmModel = CcmModelHelper.loadCcmModel(uiDriver, fileName, includePath);
uiDriver.printMessage("traverse CCM model");
traverser.traverseGraph(ccmModel);
--- 171,180 ----
}
! for(Iterator f = idl_filenames.iterator(); f.hasNext();)
{
String fileName = (String)f.next();
! MContainer ccmModel = CcmModelHelper.loadCcmModel(uiDriver, fileName, includePath);
! if(assemblies!=null)
! assemblies.updateCcmModel(ccmModel);
uiDriver.printMessage("traverse CCM model");
traverser.traverseGraph(ccmModel);
***************
*** 266,269 ****
--- 272,283 ----
handler = new CppLocalGenerator(driver, outputDirectory);
}
+ else if(generatorType.equalsIgnoreCase("c++assembly"))
+ {
+ if(assemblies==null)
+ {
+ assemblies = ccmtools.parser.assembly.Main.parse(assembly_filenames);
+ }
+ handler = new CppAssemblyGenerator(driver, outputDirectory, assemblies);
+ }
else if(generatorType.equalsIgnoreCase("c++local-test"))
{
***************
*** 326,330 ****
usedGeneratorTypes = new ArrayList<String>();
availableGeneratorTypes = new ArrayList<String>();
! filenames = new ArrayList<String>();
includePath = "";
--- 340,345 ----
usedGeneratorTypes = new ArrayList<String>();
availableGeneratorTypes = new ArrayList<String>();
! idl_filenames = new ArrayList<String>();
! assembly_filenames = new ArrayList<String>();
includePath = "";
***************
*** 389,393 ****
}
else {
! filenames.add(arg);
}
}
--- 404,414 ----
}
else {
! String x = arg.toLowerCase();
! if(x.endsWith(".idl"))
! idl_filenames.add(arg);
! else if(x.endsWith(".assembly"))
! assembly_filenames.add(arg);
! else
! throw new IllegalArgumentException("unknown file type: "+arg);
}
}
|