Print

Print


Commit in java/trunk/hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl on MAIN
GBLEventData.java+77added 125
GBLOutput.java+7-1124 -> 125
GBLOutputDriver.java+16-4124 -> 125
GBLTrackData.java+96added 125
+196-5
2 added + 2 modified, total 4 files
lcio'ization of info for gbl. Work in progress. 

java/trunk/hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl
GBLEventData.java added at 125
--- java/trunk/hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl/GBLEventData.java	                        (rev 0)
+++ java/trunk/hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl/GBLEventData.java	2014-01-29 00:07:25 UTC (rev 125)
@@ -0,0 +1,77 @@
+package org.lcsim.hps.recon.tracking.gbl;
+
+import org.lcsim.event.GenericObject;
+
+public class GBLEventData implements GenericObject {
+	
+	/*
+	 * 
+	 * Interface enumerator to access the correct data
+	 * 
+	 */
+	private static class GBLINT {
+		public static final int RUNNR = 0;
+		public static final int BANK_INT_SIZE = 1;
+	}
+	// array holding the integer data
+	private int bank_int[] = new int[GBLINT.BANK_INT_SIZE];
+	
+
+	/**
+	 * Constructor with event number as parameter
+	 * @param eventNumber the event number
+	 * 
+	 */
+	public GBLEventData(int eventNumber) {
+		setRunNr(eventNumber);
+	}
+	
+	public void setRunNr(int val) {
+		bank_int[GBLINT.RUNNR] = val;
+	}
+	
+	public int getRunNr() {
+		return this.getIntVal(GBLINT.RUNNR);
+	}
+	
+	
+	@Override
+	public int getNInt() {
+		return GBLINT.BANK_INT_SIZE;
+	}
+
+	@Override
+	public int getNFloat() {
+		return 0;
+	}
+
+	@Override
+	public int getNDouble() {
+		// TODO Auto-generated method stub
+		return 0;
+	}
+
+	@Override
+	public int getIntVal(int index) {
+		return bank_int[index];
+	}
+
+	@Override
+	public float getFloatVal(int index) {
+		// TODO Auto-generated method stub
+		return 0;
+	}
+
+	@Override
+	public double getDoubleVal(int index) {
+		// TODO Auto-generated method stub
+		return 0;
+	}
+
+	@Override
+	public boolean isFixedSize() {
+		// TODO Auto-generated method stub
+		return false;
+	}
+
+}

java/trunk/hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl
GBLOutput.java 124 -> 125
--- java/trunk/hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl/GBLOutput.java	2014-01-28 23:48:24 UTC (rev 124)
+++ java/trunk/hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl/GBLOutput.java	2014-01-29 00:07:25 UTC (rev 125)
@@ -108,7 +108,7 @@
 
 
     
-    void printGBL(Track trk, List<MCParticle> mcParticles, List<SimTrackerHit> simTrackerHits, boolean isMC) {
+    void printGBL(Track trk, GBLTrackData gtd, List<MCParticle> mcParticles, List<SimTrackerHit> simTrackerHits, boolean isMC) {
 
         SeedTrack st = (SeedTrack)trk;
         SeedCandidate seed = st.getSeedCandidate();
@@ -140,6 +140,9 @@
         	}
         }
         
+        //GBLDATA
+        // TODO add LCRelation to MC particle
+        
         // Get track parameters from MC particle 
         HelicalTrackFit htfTruth = isMC ? TrackUtils.getHTF(mcp,-1.0*this._B.z()) : null;
         
@@ -152,6 +155,9 @@
         PerigeeParams perParTruth = new PerigeeParams(htfTruth);
         file.printPerTrackParam(perPar);
         file.printPerTrackParamTruth(perParTruth);
+        
+        //GBLDATA
+        gtd.setPerigeeTrackParameters(perPar);
 
         // Get curvilinear parameters
         ClParams clPar = new ClParams(htf);

java/trunk/hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl
GBLOutputDriver.java 124 -> 125
--- java/trunk/hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl/GBLOutputDriver.java	2014-01-28 23:48:24 UTC (rev 124)
+++ java/trunk/hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl/GBLOutputDriver.java	2014-01-29 00:07:25 UTC (rev 125)
@@ -80,7 +80,7 @@
         truthRes = new TruthResiduals(bfield);
         truthRes.setDebug(_debug);
         truthRes.setHideFrame(hideFrame);
-        FieldMap.printFieldMap();
+        //FieldMap.printFieldMap();
         
     }
     
@@ -123,19 +123,31 @@
             }
         }
 
-
+        //GBLData
+        List<GBLEventData> gds =  new ArrayList<GBLEventData>(); 
+        gds.add(new GBLEventData(event.getEventNumber()));
+        
         //gbl.printNewEvent(event.getEventNumber());
         gbl.printNewEvent(iEvent,gbl.get_B().z());
-            
+
+        List<GBLTrackData> gtds =  new ArrayList<GBLTrackData>(); 
+
         iTrack = 0;
         for (Track trk : selected_tracks) {
             if(_debug>0) System.out.printf("%s: Print GBL output for this track\n", this.getClass().getSimpleName());
+            GBLTrackData gtd = new GBLTrackData();
+            gtd.setTrackId(iTrack);
             gbl.printTrackID(iTrack);
-            gbl.printGBL(trk,mcParticles,simTrackerHits,this.isMC);
+            gbl.printGBL(trk,gtd,mcParticles,simTrackerHits,this.isMC);
             totalTracksProcessed++;
+            gtds.add(gtd);
+            
             ++iTrack;
         }
         
+        event.put("GBLEventData", gds, GBLEventData.class, 0);
+        event.put("GBLTrackData", gtds, GBLTrackData.class, 0);
+        
         ++iEvent;
         
     }

java/trunk/hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl
GBLTrackData.java added at 125
--- java/trunk/hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl/GBLTrackData.java	                        (rev 0)
+++ java/trunk/hps-java/src/main/java/org/lcsim/hps/recon/tracking/gbl/GBLTrackData.java	2014-01-29 00:07:25 UTC (rev 125)
@@ -0,0 +1,96 @@
+package org.lcsim.hps.recon.tracking.gbl;
+
+import org.lcsim.event.GenericObject;
+import org.lcsim.hps.recon.tracking.gbl.GBLOutput.PerigeeParams;
+
+public class GBLTrackData implements GenericObject {
+	
+	/*
+	 * 
+	 * Interface enumerator to access the correct data
+	 * 
+	 */
+	private static class GBLINT {
+		public static final int TRACKID = 0;
+		public static final int BANK_INT_SIZE = 1;
+	}
+	private static class GBLDOUBLE {
+		public static final int PERKAPPA =0;
+		public static final int PERTHETA = 1;
+		public static final int PERPHI = 2;
+		public static final int PERD0 = 3;
+		public static final int PERZ0 = 4;
+		public static final int BANK_DOUBLE_SIZE = 5;
+	}
+	// array holding the integer data
+	private int bank_int[] = new int[GBLINT.BANK_INT_SIZE];
+	// array holding the double data
+	private double bank_double[] = new double[GBLDOUBLE.BANK_DOUBLE_SIZE];
+	
+	/**
+	 * Default constructor
+	 */
+	public GBLTrackData() {		
+	}
+	
+	/**
+	 * @param set track id to val
+	 */
+	public void setTrackId(int val) {
+		bank_int[GBLINT.TRACKID] = val;
+	}
+	
+	/**
+	 * @return track id for this object
+	 */
+	public int getTrackId() {
+		return this.getIntVal(GBLINT.TRACKID);
+	}
+	
+	/**
+	 * @param perPar is the perigee parameters that is added to object
+	 */
+	public void setPerigeeTrackParameters(PerigeeParams perPar) {
+		this.bank_double[GBLDOUBLE.PERKAPPA] = perPar.getKappa();
+		this.bank_double[GBLDOUBLE.PERTHETA] = perPar.getTheta();
+		this.bank_double[GBLDOUBLE.PERPHI] = perPar.getPhi();
+		this.bank_double[GBLDOUBLE.PERD0] = perPar.getD0();
+		this.bank_double[GBLDOUBLE.PERZ0] = perPar.getZ0();
+	}
+
+
+	/*
+	 * The functions below are all overide from 
+	 * @see org.lcsim.event.GenericObject#getNInt()
+	 */
+	
+	public int getNInt() {
+		return GBLINT.BANK_INT_SIZE;
+	}
+
+	public int getNFloat() {
+		return 0;
+	}
+
+	public int getNDouble() {
+		return GBLDOUBLE.BANK_DOUBLE_SIZE;
+	}
+
+	public int getIntVal(int index) {
+		return bank_int[index];
+	}
+
+	public float getFloatVal(int index) {
+		return 0;
+	}
+
+	public double getDoubleVal(int index) {
+		return bank_double[index];
+	}
+
+	public boolean isFixedSize() {
+		return false;
+	}
+
+
+}
SVNspam 0.1