Print

Print


Commit in SlicDiagnostics on MAIN
build.sh+1-11.3 -> 1.4
test.properties+11.3 -> 1.4
src/org/lcsim/slic/diagnostics/Main.java+3-31.14 -> 1.15
                              /SlicDiagnosticsDriver.java+22-141.27 -> 1.28
src/org/lcsim/slic/diagnostics/util/CommandLineProcessor.java+23-121.1 -> 1.2
                                   /Runner.java+3-21.2 -> 1.3
                                   /UserOptions.java+12-51.6 -> 1.7
+65-37
7 modified files
JM: support output directory argument; fix a few bugs in command options processing

SlicDiagnostics
build.sh 1.3 -> 1.4
diff -u -r1.3 -r1.4
--- build.sh	5 Mar 2008 10:28:38 -0000	1.3
+++ build.sh	7 Mar 2008 01:26:04 -0000	1.4
@@ -14,4 +14,4 @@
       -Dmaven.test.skip=true clean \
       jas:install jar:install run:install
 
-./test-single.sh org.lcsim.slic.diagnostics.SlicDiagnosticsDriverTest
+#./test-single.sh org.lcsim.slic.diagnostics.SlicDiagnosticsDriverTest

SlicDiagnostics
test.properties 1.3 -> 1.4
diff -u -r1.3 -r1.4
--- test.properties	5 Mar 2008 10:28:38 -0000	1.3
+++ test.properties	7 Mar 2008 01:26:04 -0000	1.4
@@ -21,3 +21,4 @@
 config.convertClouds=true
 config.autoname=false
 config.saveAsZip=true
+config.outputDir=.

SlicDiagnostics/src/org/lcsim/slic/diagnostics
Main.java 1.14 -> 1.15
diff -u -r1.14 -r1.15
--- Main.java	5 Mar 2008 10:28:39 -0000	1.14
+++ Main.java	7 Mar 2008 01:26:05 -0000	1.15
@@ -9,7 +9,7 @@
  * SlicDiagnostics command-line job.
  * 
  * @author jeremym
- * @version $Id: Main.java,v 1.14 2008/03/05 10:28:39 jeremy Exp $
+ * @version $Id: Main.java,v 1.15 2008/03/07 01:26:05 jeremy Exp $
  */
 public class Main
 {
@@ -23,7 +23,7 @@
     {
         try
         {
-            CommandLineProcessor cl = new CommandLineProcessor(args);                       
+            CommandLineProcessor cl = new CommandLineProcessor(args);
             Runner.run(cl.getInputFileList(), cl.getUserOptions());
         }
         catch (Exception e)
@@ -31,4 +31,4 @@
             throw new RuntimeException("Problem running SlicDiagnostics.", e);
         }
     }
-}
\ No newline at end of file
+}

SlicDiagnostics/src/org/lcsim/slic/diagnostics
SlicDiagnosticsDriver.java 1.27 -> 1.28
diff -u -r1.27 -r1.28
--- SlicDiagnosticsDriver.java	5 Mar 2008 10:28:39 -0000	1.27
+++ SlicDiagnosticsDriver.java	7 Mar 2008 01:26:05 -0000	1.28
@@ -48,7 +48,8 @@
 {
     private UserOptions _options = null;
     private static AIDA _aida = AIDA.defaultInstance();
-    private String _fileName = null;    
+    private String _fileName = null;
+    private String dirName = null;
     private static final String _defaultFileName = "SlicDiagnosticsPlots.aida";
     private EventHeader _currentEvent = null;    
     private int _verbosity = 0;
@@ -77,7 +78,9 @@
         setVerbosity(_options.getIntegerOption("config.verbosity"));
 
         // Set event notice interval
-        setEventNoticeInterval(_options.getIntegerOption("config.eventNoticeInterval"));        
+        setEventNoticeInterval(_options.getIntegerOption("config.eventNoticeInterval"));  
+        
+        dirName = _options.getStringOption("config.outputDir");
 
         // Set name of output file if found in options and autonaming is disabled.
         if (_options.getBooleanOption("config.autoname") == false)
@@ -288,15 +291,17 @@
     }
 
     /** Set the filename to argument basename, adding .aida extension if necessary. */
-    public void setAidaFileName(String path)
+    public void setAidaFileName(String path) 
     {            	    	    	
-        _fileName = (new File(path)).getAbsolutePath();
-        int pos = path.lastIndexOf(".aida");
-    	if (pos != path.length() - 5)
-    	{
-    		_fileName += ".aida";
-    	}
-    	System.out.println("file: " + _fileName);
+        //_fileName = (new File(path)).getRelativePath();
+        _fileName = path;
+        //int pos = path.lastIndexOf(".aida");
+        //System.out.println("pos="+pos);
+    	//if (pos == -1 || (pos != path.length() - 5))
+    	//{
+    	//	_fileName += ".aida";
+    	//}
+    	//System.out.println("file: " + _fileName);
     }
 
     private void setFilename()
@@ -338,7 +343,9 @@
         {
             try
             {
-                savePlots(_fileName);
+                //System.out.println("dirName="+dirName);
+                //System.out.println("fileName="+_fileName);
+                savePlots(dirName + File.separator + _fileName);
             }
             catch (Exception e)
             {
@@ -349,11 +356,12 @@
     
     private void savePlots(String filename) throws IOException
     {
-    	message("Saving AIDA tree to <" + _fileName + ">.");
+    	message("Saving AIDA tree to <" + filename + ">.");
         if (_options.getBooleanOption("config.saveAsZip"))
-        	_aida.saveAsZip(filename);
+          _aida.saveAsZip(filename);
         else
-        	_aida.saveAs(filename);
+          _aida.saveAs(filename);
+        //if (!(new File(filename)).exists()) System.out.println(filename + " << does not exist!!!");
     }
 
     static public final void message(String m)

SlicDiagnostics/src/org/lcsim/slic/diagnostics/util
CommandLineProcessor.java 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- CommandLineProcessor.java	13 Jan 2007 00:18:22 -0000	1.1
+++ CommandLineProcessor.java	7 Mar 2008 01:26:05 -0000	1.2
@@ -28,7 +28,7 @@
  * Main.
  * 
  * @author Jeremy McCormick
- * @version $Id: CommandLineProcessor.java,v 1.1 2007/01/13 00:18:22 jeremy Exp $
+ * @version $Id: CommandLineProcessor.java,v 1.2 2008/03/07 01:26:05 jeremy Exp $
  */
 public class CommandLineProcessor
 {
@@ -95,6 +95,10 @@
         opt = new Option("d", false, "add a search directory for file patterns (no pattern uses *.slcio)");
         opt.setArgs(1);
         _options.addOption(opt);
+        
+        opt = new Option("D", false, "output directory");
+        opt.setArgs(1);
+        _options.addOption(opt);
 
         opt = new Option("r", false, "add a pattern to match files in directories (no directories uses current dir)");
         opt.setArgs(1);
@@ -135,23 +139,18 @@
             _userOptions = new UserOptions();
         }
         
-        // Write out the current options to a properties file.
-        if ( cl.hasOption("P"))
-        {
-            _userOptions.toFile(cl.getOptionValue("P"));
-        }
         
         // Verbosity, overriding setting from properties file, if exists
         if (cl.hasOption("v"))
         {
             _verbosity = Integer.parseInt(cl.getOptionValue("v"));
-            _userOptions.setIntegerOption("verbosity", _verbosity);
+            _userOptions.setIntegerOption("config.verbosity", _verbosity);
         }
         
         // Max events
         if (cl.hasOption("n"))
         {
-            _userOptions.setIntegerOption("maxEvents",Integer.parseInt(cl.getOptionValue("n")));
+            _userOptions.setIntegerOption("config.maxEvents",Integer.parseInt(cl.getOptionValue("n")));
         }
         
         // Process lists of files
@@ -240,6 +239,12 @@
             }
         }
 
+        // Write out the current options to a properties file.
+        if ( cl.hasOption("P"))
+        {
+            _userOptions.toFile(cl.getOptionValue("P"));
+        }
+
         // If running in verbose mode, print out the results from command line
         // arguments that have been processed, thusfar.
         if (_verbosity > 0)
@@ -282,7 +287,7 @@
         // Output file from command-line.
         if (cl.hasOption("o"))
         {
-        	System.out.println("filename from command line");
+        	//System.out.println("filename from command line");
         	
         	// Override possible UserOption setting.
         	_userOptions.setStringOption("config.outputFile",cl.getOptionValue("o"));
@@ -290,15 +295,21 @@
         // Output file is autonamed.
         else 
         {
-        	if (cl.hasOption("-O") || _userOptions.getBooleanOption("config.autoname"))
+        	if (cl.hasOption("O") || _userOptions.getBooleanOption("config.autoname"))
         	{
-        		System.out.println("filename from autoname");
+        		//System.out.println("filename from autoname");
         		
         		// Override possible UserOption setting.
         		_userOptions.setStringOption("config.outputFile", _infiles.get(0).toString().replace(".slcio", ""));
         	}
         }
         
+        if (cl.hasOption("D"))
+        {        	
+        	_userOptions.setStringOption("config.outputDir",cl.getOptionValue("D"));
+        	System.out.println("-D = " + _userOptions.getStringOption("config.outputDir"));
+        }
+
         // If neither of above 2 are selected for output filename,
         // the user's outputFile option from properties is kept 
         // or the default, e.g. hard-coded, filename is used.
@@ -316,7 +327,7 @@
                 ++nfiles;
             }                    
             
-            System.out.println("config.outputFile="+_userOptions.getStringOption("config.outputFile"));
+            //System.out.println("config.outputFile="+_userOptions.getStringOption("config.outputFile"));
         }
     }
 

SlicDiagnostics/src/org/lcsim/slic/diagnostics/util
Runner.java 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- Runner.java	5 Mar 2008 10:28:55 -0000	1.2
+++ Runner.java	7 Mar 2008 01:26:05 -0000	1.3
@@ -12,7 +12,7 @@
  * by using LCIOEventSource and LCSimLoop.
  *
  * @author jeremym
- * @version $Id: Runner.java,v 1.2 2008/03/05 10:28:55 jeremy Exp $
+ * @version $Id: Runner.java,v 1.3 2008/03/07 01:26:05 jeremy Exp $
  */
 public class Runner
 {    
@@ -47,7 +47,8 @@
         loop.add(driver);
         
         // Print the max number of events
-        int maxevents = options.getIntegerOption("config.maxEvents");     
+        int maxevents = options.getIntegerOption("config.maxEvents"); 
+
         if (driver.getVerbosity() > 0)
         {
             SlicDiagnosticsDriver.message("Maximum Events <" + maxevents + ">");

SlicDiagnostics/src/org/lcsim/slic/diagnostics/util
UserOptions.java 1.6 -> 1.7
diff -u -r1.6 -r1.7
--- UserOptions.java	5 Mar 2008 10:28:55 -0000	1.6
+++ UserOptions.java	7 Mar 2008 01:26:05 -0000	1.7
@@ -13,7 +13,7 @@
  * Represents simple options set from properties file or command-line.
  * 
  * @author Jeremy McCormick
- * @version $Id: UserOptions.java,v 1.6 2008/03/05 10:28:55 jeremy Exp $
+ * @version $Id: UserOptions.java,v 1.7 2008/03/07 01:26:05 jeremy Exp $
  */
 public final class UserOptions
 {    
@@ -90,18 +90,18 @@
     /* Parse options, setting default values. */
     private void parse(Properties prop)
     {
-        parseBooleanOption("calorimeter.event",false);
+        parseBooleanOption("calorimeter.event",true);
         parseBooleanOption("calorimeter.hit",false);
         parseBooleanOption("calorimeter.generic",false);
         
-        parseBooleanOption("tracker.event",false);        
+        parseBooleanOption("tracker.event",true);        
         parseBooleanOption("tracker.hit",false);
         parseBooleanOption("tracker.generic",false);                        
 
         parseBooleanOption("mcparticle.generator",false);
         parseBooleanOption("mcparticle.simulator",false);
         parseBooleanOption("mcparticle.statusPlots",false);
-        parseBooleanOption("mcparticle.basicPlots",false);
+        parseBooleanOption("mcparticle.basicPlots",true);
         parseBooleanOption("mcparticle.hitPlots",false);
                       
         parseBooleanOption("cluster.cheatClusters",false);
@@ -112,7 +112,10 @@
         parseIntegerOption("config.verbosity",4);
         parseIntegerOption("config.maxEvents",-1);
         parseStringOption("config.outputFile","SlicDiagnosticsPlots.aida");
-        parseBooleanOption("config.convertClouds",false);
+        //String outDir = (new File(".")).getAbsolutePath();
+        //outDir = outDir.substring(0,outDir.length()-2);
+        parseStringOption("config.outputDir",(new File(".")).getAbsolutePath());
+        parseBooleanOption("config.convertClouds",false);        
         
         parseBooleanOption("config.saveAsZip",true);
     }
@@ -172,6 +175,10 @@
         {
             sb.append(k + "=" + _integerOptions.get(k) + '\n');
         }
+        for (String k : _stringOptions.keySet())
+        {
+            sb.append(k + "=" + _stringOptions.get(k) + '\n');
+        }
         return sb.toString();
     }
     
CVSspam 0.2.8