lcsim/src/org/lcsim/plugin/browser
diff -N SimCalorimeterHitTableModel.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ SimCalorimeterHitTableModel.java 5 May 2010 18:09:03 -0000 1.1
@@ -0,0 +1,72 @@
+package org.lcsim.plugin.browser;
+
+
+
+import org.lcsim.event.CalorimeterHit;
+import org.lcsim.event.SimCalorimeterHit;
+import org.lcsim.geometry.IDDecoder;
+
+/**
+ * @author tonyj
+ */
+class SimCalorimeterHitTableModel extends CellIDTableModel
+{
+ private static final String[] defaultColumns =
+ { "ID", "raw energy (GeV)", "corrected energy (GeV)", "X (mm)", "Y (mm)", "Z (mm)", "time (ns)" };
+
+ SimCalorimeterHitTableModel()
+ {
+ super(defaultColumns);
+ }
+
+ public boolean canDisplay(Class c)
+ {
+ return SimCalorimeterHit.class.isAssignableFrom(c);
+ }
+
+ public Class getColumnClass(int row)
+ {
+ return row < getFieldCount() ? (getIDDecoder() == null) ? Long.class : Integer.class : Double.class;
+ }
+
+ public Object getValueAt(int row, int column)
+ {
+ CalorimeterHit hit = (CalorimeterHit) getHit(row);
+ int fieldCount = getFieldCount();
+
+ if (column < fieldCount)
+ {
+ IDDecoder decoder = getIDDecoder();
+ if (decoder != null) decoder.setID(hit.getCellID());
+ return decoder == null ? hit.getCellID() : decoder.getValue(column);
+ }
+ else
+ {
+ switch (column - fieldCount)
+ {
+ case 0:
+ return hit.getRawEnergy();
+ case 1:
+ double cE = java.lang.Double.NaN;
+ try
+ {
+ cE = hit.getCorrectedEnergy();
+ }
+ catch (Exception e)
+ {
+ }
+ return cE;
+ case 2:
+ return hit.getPosition()[0];
+ case 3:
+ return hit.getPosition()[1];
+ case 4:
+ return hit.getPosition()[2];
+ case 5:
+ return hit.getTime();
+ default:
+ return " ";
+ }
+ }
+ }
+}
lcsim/src/org/lcsim/plugin/browser
diff -u -r1.7 -r1.8
--- CalorimeterHitTableModel.java 5 Apr 2006 09:09:12 -0000 1.7
+++ CalorimeterHitTableModel.java 5 May 2010 18:09:03 -0000 1.8
@@ -1,13 +1,9 @@
package org.lcsim.plugin.browser;
-import java.util.ArrayList;
-import java.util.List;
-import javax.swing.table.AbstractTableModel;
-import org.freehep.util.ScientificFormat;
import org.lcsim.event.CalorimeterHit;
-import org.lcsim.event.EventHeader.LCMetaData;
+import org.lcsim.event.SimCalorimeterHit;
import org.lcsim.geometry.IDDecoder;
/**
@@ -16,7 +12,7 @@
class CalorimeterHitTableModel extends CellIDTableModel
{
private static final String[] defaultColumns =
- { "id", "raw energy (GeV)", "corrected energy (GeV)", "x (mm)", "y (mm)", "z (mm)", "time (ns)" };
+ { "id", "type", "energy (GeV)", "X (mm)", "Y (mm)", "Z (mm)", "time (ns)" };
CalorimeterHitTableModel()
{
@@ -25,6 +21,7 @@
public boolean canDisplay(Class c)
{
+ if(SimCalorimeterHit.class.isAssignableFrom(c)) return false;
return CalorimeterHit.class.isAssignableFrom(c);
}
@@ -49,17 +46,9 @@
switch (column - fieldCount)
{
case 0:
- return hit.getRawEnergy();
+ return hit.getType();
case 1:
- double cE = java.lang.Double.NaN;
- try
- {
- cE = hit.getCorrectedEnergy();
- }
- catch (Exception e)
- {
- }
- return cE;
+ return hit.getCorrectedEnergy();
case 2:
return hit.getPosition()[0];
case 3:
lcsim/src/org/lcsim/plugin/browser
diff -u -r1.14 -r1.15
--- LCSimEventBrowser.java 5 Mar 2009 02:44:17 -0000 1.14
+++ LCSimEventBrowser.java 5 May 2010 18:09:03 -0000 1.15
@@ -63,6 +63,7 @@
public static void registerTableModels(FreeHEPLookup lookup)
{
lookup.add(new CalorimeterHitTableModel());
+ lookup.add(new SimCalorimeterHitTableModel());
lookup.add(new ClusterTableModel());
lookup.add(new MCParticleTableModel());
lookup.add(new SimTrackerHitTableModel());