Commit in hps-java on MAIN | |||
pom.xml | +6 | -3 | 1.24 -> 1.25 |
scripts/et_evio_file_producer_test.sh | +2 | -1 | 1.6 -> 1.7 |
src/main/java/org/lcsim/hps/evio/EvioFileProducer.java | +2 | 1.7 -> 1.8 | |
src/main/java/org/lcsim/hps/monitoring/ConnectionPanel.java | +2 | 1.2 -> 1.3 | |
/ConnectionParameters.java | +1 | -1 | 1.2 -> 1.3 |
/MonitoringConsumer.java | +22 | -44 | 1.2 -> 1.3 |
/MonitoringGui.java | +6 | -28 | 1.2 -> 1.3 |
/SensorOccupancyPlotsDriver.java | +8 | -13 | 1.3 -> 1.4 |
src/main/resources/org/lcsim/hps/steering/EtSensorOccupancy.lcsim | +2 | -2 | 1.2 -> 1.3 |
/HPSWriteRawDataFromMC.lcsim | +7 | -10 | 1.1 -> 1.2 |
+58 | -102 |
current working copies
diff -u -r1.24 -r1.25 --- pom.xml 21 Mar 2012 20:19:44 -0000 1.24 +++ pom.xml 25 Mar 2012 08:55:11 -0000 1.25 @@ -72,11 +72,13 @@
<excludes> <!-- Fix for http://jira.codehaus.org/browse/SUREFIRE-288 --> <exclude>**/*$*</exclude>
- <exclude>org/lcsim/DoEvioTest.java</exclude> - <exclude>org/lcsim/hps/et/BasicET12SystemTest.java</exclude>
+ <exclude>org/lcsim/DoEvioTest.java</exclude> + <exclude>org/lcsim/hps/et/BasicET12SystemTest.java</exclude> + <exclude>org/lcsim/hps/evio/RawTrackerHitToEvio4Converter_Test.java</exclude>
</excludes> </configuration> </plugin>
+<!--
<plugin> <groupId>org.freehep</groupId> <artifactId>freehep-jas-plugin</artifactId>
@@ -97,7 +99,8 @@
</includes> </configuration> </plugin>
- <plugin>
+--> + <plugin>
<groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>1.3.3</version>
diff -u -r1.6 -r1.7 --- et_evio_file_producer_test.sh 25 Mar 2012 07:28:50 -0000 1.6 +++ et_evio_file_producer_test.sh 25 Mar 2012 08:55:11 -0000 1.7 @@ -22,7 +22,8 @@
classpath=`pwd`/target/hps-java-1.1-SNAPSHOT-bin.jar # Run it.
-prod="java -classpath $classpath org.lcsim.hps.evio.EvioFileProducer -e ${eviofile} -f ETBuffer -host $(hostname) -s 2500 -d 1"
+prod="java -classpath $classpath org.lcsim.hps.evio.EvioFileProducer -e ${eviofile} -f ETBuffer -host $(hostname) -s 4000"
+# -d 1"
#-s 5000" # -d 10" echo $prod
diff -u -r1.7 -r1.8 --- EvioFileProducer.java 25 Mar 2012 07:26:15 -0000 1.7 +++ EvioFileProducer.java 25 Mar 2012 08:55:11 -0000 1.8 @@ -15,6 +15,7 @@
// This is copied and modified from Carl Timmer's EvioProducer class in et 12 org.jlab.coda.et.apps package. // TODO Add option to set number of events in put array.
+// TODO Add option for multiple EVIO input files.
public class EvioFileProducer { EvioReader reader;
@@ -176,6 +177,7 @@
// Write EVIO event to EtEvent's buffer. ByteBuffer buf = mevs[0].getDataBuffer();
+ // FIXME Need new EventWriter every time?
EventWriter writer = new EventWriter(buf, 100000, 100, null, null); writer.writeEvent(event); try {
diff -u -r1.2 -r1.3 --- ConnectionPanel.java 22 Mar 2012 22:03:35 -0000 1.2 +++ ConnectionPanel.java 25 Mar 2012 08:55:11 -0000 1.3 @@ -25,6 +25,8 @@
JTextField ppositionField; ConnectionParameters connectionParameters;
+ + boolean userWantsConnect;
ConnectionPanel() {
diff -u -r1.2 -r1.3 --- ConnectionParameters.java 22 Mar 2012 03:55:03 -0000 1.2 +++ ConnectionParameters.java 25 Mar 2012 08:55:11 -0000 1.3 @@ -123,7 +123,7 @@
throw new ConnectionParametersException("Did not specify a proper parallel position number."); } } else {
- throw new ConnectionParametersException("Arguments included invalid command line parameter.");
+ throw new ConnectionParametersException("Arguments included invalid command line parameter:" + args[i]);
} }
diff -u -r1.2 -r1.3 --- MonitoringConsumer.java 25 Mar 2012 07:23:20 -0000 1.2 +++ MonitoringConsumer.java 25 Mar 2012 08:55:11 -0000 1.3 @@ -124,33 +124,24 @@
// Start job timer. gui.updateJobStartTime();
- // Event loop.
+
// array of events EtEvent[] mevs = null;
- int eventCount = 0; - while (true) { - //System.out.println("top of EtEvent loop"); - //boolean timedOut = false;
+ //int eventCount = 0; + while (true) { // event loop
try {
- if (debug) - System.out.println("waiting for EtEvents");
+ //if (debug) + // System.out.println("waiting for EtEvents");
//mevs = sys.getEvents(att, Mode.SLEEP, Modify.NOTHING, 0, cn.chunk); mevs = sys.getEvents(att, Mode.TIMED, Modify.NOTHING, 20000000, cn.chunk);
- eventCount += mevs.length; - if (debug) { - System.out.println("event count <" + eventCount + ">"); - System.out.println("got " + mevs.length + " EtEvents"); - }
+ //eventCount += mevs.length; + //if (debug) { + // System.out.println("event count <" + eventCount + ">"); + // System.out.println("got " + mevs.length + " EtEvents"); + // }
} catch (EtTimeoutException e) {
- // timedOut = true; - //} - // When timeout occurs, do cleanup and exit. - //if (timedOut) { - //System.out.println("timed out"); - // Call wrapper to Driver.endOfData() on DriverAdapter.
+ System.out.println("ET Consumer timed out.");
driverAdapter.finish(null);
- //System.exit(0); - // Exit after user presses enter.
System.out.println("Press ENTER to exit ..."); System.console().readLine(); System.exit(0);
@@ -158,10 +149,9 @@
// Loop over retrieved EtEvents. for (EtEvent mev : mevs) {
+ + // Update GUI's event count.
gui.updateEventCount();
- // Increment GUI event count. - //if (gui.) - //
// Get EvioEvent and check for errors. ByteBuffer buf = mev.getDataBuffer();
@@ -170,43 +160,31 @@
try { evioEvent = reader.parseNextEvent(); } catch (java.nio.BufferUnderflowException e) {
- if (debug) - System.out.println("Caught underflow!");
+ // if (debug) + System.err.println("Caught underflow!");
}
+ // We silently skip bad events (for now).
if (evioEvent == null) {
- if (debug) - System.out.println("Failed to build EVIO event. Skipping this EtEvent!");
+ //if (debug) + System.err.println("Failed to build EVIO event. Skipping this EtEvent!");
continue; } // Create LCSim event from EVIO data.
- if (debug) - System.out.println("building lcsim event"); - long lcsimStartTime = System.nanoTime();
EventHeader lcsimEvent = eventBuilder.makeLCSimEvent(evioEvent); // Make a new event for DriverAdapter. RecordSuppliedEvent loopEvent = new RecordSuppliedEvent(new Object(), lcsimEvent); // Call process methods via Driver Adapter.
- if (debug) - System.out.println("running lcsim"); - driverAdapter.recordSupplied(loopEvent); - long lcsimEndTime = System.nanoTime(); - long lcsimEventTime = lcsimEndTime - lcsimStartTime; - if (debug) - System.out.println("lcsim proc time [ns]: " + lcsimEventTime); - - //System.out.println("done running lcsim");
+ driverAdapter.recordSupplied(loopEvent); + + // Update the average event rate. + gui.updateAverageEventRate();
// Update elapsed time. gui.updateElapsedTime();
- - // Update the average event rate in the GUI. - gui.updateAverageEventRate();
}
- if (debug) - System.out.println("putting events back");
// Put events back into the ET system. sys.putEvents(att, mevs); }
diff -u -r1.2 -r1.3 --- MonitoringGui.java 25 Mar 2012 07:23:20 -0000 1.2 +++ MonitoringGui.java 25 Mar 2012 08:55:11 -0000 1.3 @@ -25,7 +25,6 @@
private JTextField eventCounterField; private JTextField elapsedTimeField;
- //private JTextField eventRateField;
private JTextField avgEventRateField; private JTextField refreshField; private DecimalFormat rateFormat = new DecimalFormat("#.##");
@@ -36,9 +35,9 @@
private static JobControlManager jobMgr; private static MonitoringGui monitoringGui;
-
+
// Refresh every 1000 events by default.
- private int eventRefresh = 1000;
+ private int eventRefresh = 1000;
private long jobStartTime; private int eventCount;
@@ -100,26 +99,6 @@
elapsedTimeField.setBackground(Color.WHITE); fieldsPanel.add(elapsedTimeField, c);
- /* - c = new GridBagConstraints(); - c.gridx = 0; - c.gridy = 2; - c.anchor = GridBagConstraints.WEST; - JLabel rateLabel = new JLabel("Event Rate [Hz]:"); - rateLabel.setHorizontalAlignment(JLabel.LEFT); - fieldsPanel.add(rateLabel, c); - - c = new GridBagConstraints(); - c.gridx = 1; - c.gridy = 2; - c.anchor = GridBagConstraints.EAST; - eventRate = new JTextField("0", 4); - eventRate.setHorizontalAlignment(JTextField.RIGHT); - eventRate.setEditable(false); - eventRate.setBackground(Color.WHITE); - fieldsPanel.add(eventRate, c); - */ -
c = new GridBagConstraints(); c.gridx = 0; c.gridy = 2;
@@ -155,7 +134,6 @@
fieldsPanel.add(refreshField, c);
-
// Button padding. Insets buttonInsets = new Insets(1, 1, 1, 1);
@@ -167,7 +145,7 @@
resetButton = new JButton("Reset"); resetButton.setActionCommand("reset"); resetButton.addActionListener(this);
- resetButton.setToolTipText("Reset the plots.");
+ resetButton.setToolTipText("Reset the GUI and the plots.");
buttonsPanel.add(resetButton, c); c = new GridBagConstraints();
@@ -228,9 +206,9 @@
if (updateEvent()) { double jobTime = System.currentTimeMillis() - jobStartTime; if (jobTime > 0) {
- double avgProcTime = jobTime / eventCount; - double avgEventRate = 10e3 / avgProcTime; - avgEventRateField.setText(rateFormat.format(avgEventRate));
+ double jobSeconds = jobTime / 1000; + double eventsPerSecond = eventCount / jobSeconds; + avgEventRateField.setText(rateFormat.format(eventsPerSecond));
} } }
diff -u -r1.3 -r1.4 --- SensorOccupancyPlotsDriver.java 25 Mar 2012 07:23:20 -0000 1.3 +++ SensorOccupancyPlotsDriver.java 25 Mar 2012 08:55:11 -0000 1.4 @@ -19,25 +19,23 @@
public class SensorOccupancyPlotsDriver extends Driver implements Resettable {
+ private String rawTrackerHitCollectionName = "RawTrackerHitMaker_RawTrackerHits"; + private String trackerName = "Tracker"; +
private AIDA aida = AIDA.defaultInstance(); private IPlotter occuPlotter;
+
private Detector detector; private List<SiSensor> sensors; private Map<SiSensor,int[]> occupancyMap;
- private String rawTrackerHitCollectionName = "RawTrackerHitMaker_RawTrackerHits"; - private String trackerName = "Tracker";
+ private Map<SiSensor,Integer> sensorRegionMap; +
private int eventCount = 0;
- private int eventRefreshRate = 1; - private boolean debug = true; - Map<SiSensor,Integer> sensorRegionMap;
+ private int eventRefreshRate = 1000;
public SensorOccupancyPlotsDriver() {}
- public void setDebug(boolean debug) { - this.debug = debug; - } -
public void setRawTrackerHitCollectionName(String rawTrackerHitCollectionName) { this.rawTrackerHitCollectionName = rawTrackerHitCollectionName; }
@@ -128,9 +126,6 @@
} public void process(EventHeader event) {
- - if (debug) - System.out.println("SensorOccupancyPlots.process");
// Increment event counter. ++eventCount;
@@ -144,6 +139,7 @@
strips[hit.getIdentifierFieldValue("strip")] += 1; }
+ // Plot strip occupancies.
if (eventCount % this.eventRefreshRate == 0) { for (SiSensor sensor : sensors) { IHistogram1D sensorHist = aida.histogram1D(sensor.getName());
@@ -156,7 +152,6 @@
} } }
- //occuPlotter.show();
} }
diff -u -r1.2 -r1.3 --- EtSensorOccupancy.lcsim 25 Mar 2012 07:23:21 -0000 1.2 +++ EtSensorOccupancy.lcsim 25 Mar 2012 08:55:11 -0000 1.3 @@ -17,11 +17,11 @@
<driver name="SVTSetupDriver" type="org.lcsim.hps.recon.tracking.HPSSVTSensorSetup"> </driver> <driver name="EventMarkerDriver" type="org.lcsim.job.EventMarkerDriver">
- <eventInterval>10000</eventInterval>
+ <eventInterval>5000</eventInterval>
</driver> <driver name="OccupancyPlots" type="org.lcsim.hps.monitoring.SensorOccupancyPlotsDriver"> <debug>false</debug>
- <eventRefreshRate>4000</eventRefreshRate>
+ <eventRefreshRate>5000</eventRefreshRate>
</driver> </drivers> </lcsim>
\ No newline at end of file
diff -u -r1.1 -r1.2 --- HPSWriteRawDataFromMC.lcsim 22 Mar 2012 21:10:26 -0000 1.1 +++ HPSWriteRawDataFromMC.lcsim 25 Mar 2012 08:55:11 -0000 1.2 @@ -1,32 +1,30 @@
<lcsim xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="http://www.lcsim.org/schemas/lcsim/1.0/lcsim.xsd">
-
<inputFiles> <file>${inputFile}.slcio</file> </inputFiles>
-
<control> <numberOfEvents>-1</numberOfEvents> <printInputFiles>true</printInputFiles> <printDriversDetailed>true</printDriversDetailed> </control>
-
<execute>
- <driver name="SVTSetupDriver"/>
+ <driver name="EventMarkerDriver"/>
+ <driver name="SVTSetupDriver"/>
<driver name="TrackerDigiDriver"/> <driver name="EcalReadout"/> <driver name="LCIOWriter"/>
+ <driver name="EvioConverter"/>
</execute>
-
<drivers>
-
+ <driver name="EventMarkerDriver" type="org.lcsim.job.EventMarkerDriver"> + <eventInterval>100</eventInterval> + </driver>
<driver name="SVTSetupDriver" type="org.lcsim.hps.recon.tracking.HPSSVTSensorSetup"> </driver>
-
<driver name="TrackerDigiDriver" type="org.lcsim.hps.recon.tracking.TrackerDigiDriver"/>
-
<driver name="EcalReadout" type="org.lcsim.hps.recon.ecal.HPSEcalConverterAtoDDriver"> <ecalName>Ecal</ecalName>
@@ -34,12 +32,11 @@
<rawCollectionName>EcalRawHits</rawCollectionName> <scale>0.08</scale> </driver>
-
<driver name="LCIOWriter" type="org.lcsim.util.loop.LCIODriver"> <outputFilePath>${inputFile}_rawData</outputFilePath> <writeOnlyCollections>EcalRawHits RawTrackerHitMaker_RawTrackerHits</writeOnlyCollections> </driver>
-
+ <driver name="EvioConverter" type="org.lcsim.hps.evio.MCRawDataToEvio4Converter"/>
</drivers> </lcsim>
Use REPLY-ALL to reply to list
To unsubscribe from the LCD-CVS list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCD-CVS&A=1