Author: [log in to unmask] Date: Wed Jun 17 15:57:55 2015 New Revision: 3153 Log: add converter Added: java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/triggerbank/HeadBankData.java - copied, changed from r3152, java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/triggerbank/TestRunTriggerData.java Modified: java/trunk/evio/src/main/java/org/hps/evio/LCSimEngRunEventBuilder.java Copied: java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/triggerbank/HeadBankData.java (from r3152, java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/triggerbank/TestRunTriggerData.java) ============================================================================= --- java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/triggerbank/TestRunTriggerData.java (original) +++ java/trunk/ecal-recon/src/main/java/org/hps/recon/ecal/triggerbank/HeadBankData.java Wed Jun 17 15:57:55 2015 @@ -1,79 +1,75 @@ package org.hps.recon.ecal.triggerbank; +import java.util.Date; import org.lcsim.event.GenericObject; /** - * + * * @author Sho Uemura <[log in to unmask]> - * @version $Id: TriggerData.java,v 1.3 2012/08/03 23:14:39 meeg Exp $ */ -public class TestRunTriggerData extends AbstractIntData { - - public static final int BANK_TAG = 0xe106; - public static final int BANK_SIZE = 8; - - public static final int OR_TRIG = 3; - public static final int TOP_TRIG = 4; - public static final int BOT_TRIG = 5; - public static final int AND_TRIG = 6; - public static final int TIME = 7; - public static final String TRIG_COLLECTION = "TriggerBank"; - - public TestRunTriggerData(int[] bank) { +public class HeadBankData extends AbstractIntData { + + public static final int BANK_TAG = 0xe10f; + public static final int BANK_SIZE = 5; + + public static final int VERSION_NUM = 0; + public static final int RUN_NUM = 1; + public static final int EVENT_NUM = 2; + public static final int UNIX_TIME = 3; + public static final int EVENT_TYPE = 4; + + public HeadBankData(int[] bank) { super(bank); decodeData(); } - - public TestRunTriggerData(GenericObject data) { + + public HeadBankData(GenericObject data) { super(data, BANK_TAG); decodeData(); } - - public long getTime() { - return bank[TIME] & 0xffffffffL; + + public int getRunNum() { + return bank[RUN_NUM]; } - - public int getOrTrig() { - return bank[OR_TRIG]; + + public int getEventNum() { + return bank[EVENT_NUM]; } - - public int getTopTrig() { - return bank[TOP_TRIG]; + + public int getUnixTime() { + return bank[UNIX_TIME]; } - - public int getBotTrig() { - return bank[BOT_TRIG]; + + public Date getDate() { + return getDate(this); } - - public int getAndTrig() { - return bank[AND_TRIG]; + + public static int getRunNum(GenericObject object) { + return AbstractIntData.getBankInt(object, RUN_NUM); } - - public static long getTime(GenericObject object) { - return AbstractIntData.getBankInt(object, TIME) & 0xffffffffL; + + public static int getEventNum(GenericObject object) { + return AbstractIntData.getBankInt(object, EVENT_NUM); } - - public static int getOrTrig(GenericObject object) { - return AbstractIntData.getBankInt(object, OR_TRIG); + + public static int getUnixTime(GenericObject object) { + return AbstractIntData.getBankInt(object, UNIX_TIME); } - - public static int getTopTrig(GenericObject object) { - return AbstractIntData.getBankInt(object, TOP_TRIG); + + public static Date getDate(GenericObject object) { + long unixTime = getUnixTime(object); + if (unixTime == 0) { + return null; + } else { + return new Date(unixTime * 1000); + } } - - public static int getBotTrig(GenericObject object) { - return AbstractIntData.getBankInt(object, BOT_TRIG); - } - - public static int getAndTrig(GenericObject object) { - return AbstractIntData.getBankInt(object, AND_TRIG); - } - + @Override public int getTag() { return BANK_TAG; } - + @Override protected final void decodeData() { //doesn't actually do anything since there is no decoding done on the ints if (this.bank.length != BANK_SIZE) { Modified: java/trunk/evio/src/main/java/org/hps/evio/LCSimEngRunEventBuilder.java ============================================================================= --- java/trunk/evio/src/main/java/org/hps/evio/LCSimEngRunEventBuilder.java (original) +++ java/trunk/evio/src/main/java/org/hps/evio/LCSimEngRunEventBuilder.java Wed Jun 17 15:57:55 2015 @@ -4,8 +4,8 @@ import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; - import org.hps.recon.ecal.triggerbank.AbstractIntData; +import org.hps.recon.ecal.triggerbank.HeadBankData; import org.hps.recon.ecal.triggerbank.SSPData; import org.hps.recon.ecal.triggerbank.TDCData; import org.hps.recon.ecal.triggerbank.TIData; @@ -51,6 +51,7 @@ intBanks = new ArrayList<IntBankDefinition>(); intBanks.add(new IntBankDefinition(SSPData.class, new int[] {sspCrateBankTag, sspBankTag})); intBanks.add(new IntBankDefinition(TIData.class, new int[] {sspCrateBankTag, 0xe10a})); + intBanks.add(new IntBankDefinition(HeadBankData.class, new int[] {sspCrateBankTag, 0xe10f})); intBanks.add(new IntBankDefinition(TDCData.class, new int[] {0x3a, 0xe107})); // ecalReader = new ECalEvioReader(0x25, 0x27); triggerConfigReader = new TriggerConfigEvioReader();