Print

Print


Commit in lcsim/src/org/lcsim/digisim on MAIN
DigiSimConditionsConverter.java+37added 1.1
DigiSimSetup.java+18added 1.1
ConfigReader.java+3-31.5 -> 1.6
DigiSimDriver.java+8-31.11 -> 1.12
+66-6
2 added + 2 modified, total 4 files
GL: DigiSim configuration now taken from ConditionsConverter, from digisim/digisim.steer

lcsim/src/org/lcsim/digisim
DigiSimConditionsConverter.java added at 1.1
diff -N DigiSimConditionsConverter.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ DigiSimConditionsConverter.java	23 Aug 2005 23:54:23 -0000	1.1
@@ -0,0 +1,37 @@
+package org.lcsim.digisim;
+
+import java.io.InputStream;
+import org.lcsim.conditions.ConditionsConverter;
+import org.lcsim.conditions.ConditionsManager;
+import org.lcsim.conditions.RawConditions;
+
+/**
+ * A Class to manage DigiSim configurations under possibly different 
+ * run conditions.
+ * @author Guilherme Lima
+ * @version $Id: DigiSimConditionsConverter.java,v 1.1 2005/08/23 23:54:23 lima Exp $
+ */
+public class DigiSimConditionsConverter implements ConditionsConverter<DigiSimSetup>
+{
+    public DigiSimSetup getData(ConditionsManager manager, String name)
+    {
+        RawConditions conditions = manager.getRawConditions(name);
+        try
+        {
+            InputStream in = conditions.getInputStream();
+	    ConfigReader reader = new ConfigReader(in);
+            DigiSimSetup conf = reader.digiSimParse();
+            return conf;
+        }
+        catch (Exception x)
+        {
+            throw new RuntimeException("Error reading DigiSim configuration "
+				       +name,x);
+        }
+    }
+    
+    public Class<DigiSimSetup> getType()
+    {
+        return DigiSimSetup.class;
+    }
+}

lcsim/src/org/lcsim/digisim
DigiSimSetup.java added at 1.1
diff -N DigiSimSetup.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ DigiSimSetup.java	23 Aug 2005 23:54:23 -0000	1.1
@@ -0,0 +1,18 @@
+package org.lcsim.digisim;
+
+import java.util.Vector;
+import java.util.Map;
+import java.util.HashMap;
+
+public class DigiSimSetup {
+
+    public DigiSimSetup(Map<String,Vector<String>> setup) {
+	_setup = setup;
+    }
+
+    public Map<String,Vector<String>> getSections() {
+	return _setup;
+    }
+
+    Map<String,Vector<String>> _setup;
+}

lcsim/src/org/lcsim/digisim
ConfigReader.java 1.5 -> 1.6
diff -u -r1.5 -r1.6
--- ConfigReader.java	28 Jun 2005 21:56:09 -0000	1.5
+++ ConfigReader.java	23 Aug 2005 23:54:22 -0000	1.6
@@ -15,7 +15,7 @@
  *  interpret the Marlin steering file.
  *
  * @author Guilherme Lima
- * @version $Id: ConfigReader.java,v 1.5 2005/06/28 21:56:09 lima Exp $
+ * @version $Id: ConfigReader.java,v 1.6 2005/08/23 23:54:22 lima Exp $
  */
 class ConfigReader {
 
@@ -113,7 +113,7 @@
      * @return a map containing all the sections in the configuration
      * file, keyed by section name.
      */
-    public Map<String,Vector<String>> digiSimParse() {
+    public DigiSimSetup digiSimParse() {
 	Map<String,Vector<String>> sections
 	    = new HashMap<String,Vector<String>>();
 	for(;;) {
@@ -123,7 +123,7 @@
 	    }
 	    else break;
 	}
-	return sections;
+	return new DigiSimSetup(sections);
     }
 
     /**

lcsim/src/org/lcsim/digisim
DigiSimDriver.java 1.11 -> 1.12
diff -u -r1.11 -r1.12
--- DigiSimDriver.java	26 Jul 2005 23:58:41 -0000	1.11
+++ DigiSimDriver.java	23 Aug 2005 23:54:22 -0000	1.12
@@ -13,7 +13,7 @@
  * both parameters and events from the framework.
  *
  * @author Guilherme Lima
- * @version $Id: DigiSimDriver.java,v 1.11 2005/07/26 23:58:41 lima Exp $
+ * @version $Id: DigiSimDriver.java,v 1.12 2005/08/23 23:54:22 lima Exp $
  */
 public class DigiSimDriver extends Driver {
 
@@ -25,12 +25,14 @@
     public DigiSimDriver(String name) {
       _name = name;
       _digitizers = new Vector<Digitizer>();
+      getConditionsManager().registerConditionsConverter(new DigiSimConditionsConverter());
     }
 
     /** Private constructor, not to be used */
     public DigiSimDriver() {
       _name = new String("");
       _digitizers = new Vector<Digitizer>();
+      getConditionsManager().registerConditionsConverter(new DigiSimConditionsConverter());
     }
 
     /**
@@ -44,12 +46,15 @@
 	if(_name.equals("")) return;
 
 	// open released config file from lcsim.jar
-   	ConfigReader file = new ConfigReader(DigiSimDriver.class.getResourceAsStream(_name+".steer"));
+//    	ConfigReader file = new ConfigReader(DigiSimDriver.class.getResourceAsStream(_name+".steer"));
 	// use local config file
 // 	ConfigReader file = new ConfigReader(_name+".steer");
 
 	// read config file
-	Map<String,Vector<String>> sections = file.digiSimParse();
+	DigiSimSetup setup = getConditionsManager().getCachedConditions(DigiSimSetup.class, 
+                        "digisim/digisim.steer").getCachedData();
+
+ 	Map<String,Vector<String>> sections = setup.getSections();	
 
 	// find digitizers to be instantiated
 	Vector<String> active = new Vector<String>();
CVSspam 0.2.8