Skip to content

Commit dcb23f8

Browse files
author
Matthew Solt
committed
Merge branch 'iss221' of https://github.com/JeffersonLab/hps-java into iss221
2 parents 9b792be + 7788464 commit dcb23f8

3 files changed

Lines changed: 58 additions & 2 deletions

File tree

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package org.hps.readout.ecal;
2+
3+
import java.util.ArrayList;
4+
import java.util.List;
5+
6+
import org.lcsim.event.EventHeader;
7+
import org.lcsim.event.SimTrackerHit;
8+
import org.lcsim.event.base.BaseSimTrackerHit;
9+
import org.lcsim.lcio.LCIOConstants;
10+
11+
public class InactiveSiHitReadout extends TriggerableDriver {
12+
13+
private static String COLLNAME = "TrackerHits_Inactive";
14+
private List<SimTrackerHit> hits = new ArrayList<SimTrackerHit>();
15+
static final int FLAG = (1 << LCIOConstants.THBIT_MOMENTUM);
16+
17+
public void process(EventHeader event) {
18+
if (event.hasCollection(SimTrackerHit.class, COLLNAME)) {
19+
List<SimTrackerHit> hits = event.get(SimTrackerHit.class, COLLNAME);
20+
for (SimTrackerHit hit : hits) {
21+
double hitTime = hit.getTime();
22+
hitTime += ClockSingleton.getTime();
23+
((BaseSimTrackerHit)hit).setTime(hitTime);
24+
}
25+
hits.addAll(hits);
26+
}
27+
checkTrigger(event);
28+
}
29+
30+
@Override
31+
protected void processTrigger(EventHeader event) {
32+
event.put(COLLNAME, hits, SimTrackerHit.class, FLAG, "TrackerHits");
33+
hits.clear();
34+
}
35+
36+
@Override
37+
public int getTimestampType() {
38+
return ReadoutTimestamp.SYSTEM_TRACKER;
39+
}
40+
}

evio/src/main/java/org/hps/evio/TestRunTriggeredReconToLcio.java

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,11 +58,13 @@ public class TestRunTriggeredReconToLcio extends TriggerableDriver {
5858
List<SimTrackerHit> triggerTrackerHitsInactive = null;
5959
List<SimCalorimeterHit> triggerECalHits = null;
6060
List<SimTrackerHit> triggerECalScoringPlaneHits = null;
61+
List<SimTrackerHit> inactiveSiHits = null;
6162
static final String ecalCollectionName = "EcalHits";
6263
static final String trackerCollectionName = "TrackerHits";
6364
static final String trackerInactiveCollectionName = "TrackerHits_Inactive";
6465
private final String relationCollectionName = "SVTTrueHitRelations";
6566
String ecalScoringPlaneHitsCollectionName = "TrackerHitsECal";
67+
static final String inactiveSiCollectionName = "TrackerHits_Inactive";
6668
private int verbosity = 1;
6769
private boolean writeSvtData = true;
6870
private boolean writeEcalData = true;
@@ -223,6 +225,9 @@ protected void process(EventHeader event) {
223225
if (event.hasCollection(SimTrackerHit.class, ecalScoringPlaneHitsCollectionName)) {
224226
triggerECalScoringPlaneHits = event.get(SimTrackerHit.class, ecalScoringPlaneHitsCollectionName);
225227
}
228+
if (event.hasCollection(SimTrackerHit.class, inactiveSiCollectionName)) {
229+
inactiveSiHits = event.get(SimTrackerHit.class, inactiveSiCollectionName);
230+
}
226231
} else {
227232
triggerMCParticles = null;
228233
triggerECalHits = null;
@@ -360,7 +365,16 @@ protected void processTrigger(EventHeader event) {
360365
System.out.println("Adding " + triggerECalScoringPlaneHits.size() + " ECalTrackerHits");
361366
}
362367
}
363-
}
368+
// iss221: Write inactive Si hits. --JM
369+
if (inactiveSiHits != null) {
370+
lcsimEvent.put(inactiveSiCollectionName, this.inactiveSiHits, SimTrackerHit.class, 0xc0000000);
371+
if (verbosity >= 1) {
372+
System.out.println("Adding " + this.inactiveSiHits.size() + " to " + inactiveSiCollectionName);
373+
}
374+
}
375+
376+
}
377+
364378
lcsimEvent.put(ReadoutTimestamp.collectionName, event.get(ReadoutTimestamp.class, ReadoutTimestamp.collectionName));
365379
++eventNum;
366380
}

steering-files/src/main/resources/org/hps/steering/readout/EngineeringRun2015TrigPairs1_Pass2.lcsim

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
<driver name="EcalClustererGTP"/>
1313
<driver name="PairTrigger1"/>
1414
<driver name="SimpleSVTReadout" />
15+
<driver name="InactiveSiHitReadout" />
1516
<driver name="TestRunReconToLcio"/>
1617
<driver name="AidaSaveDriver"/>
1718
<driver name="ClockDriver"/>
@@ -72,7 +73,7 @@
7273
<energySlopeLow>0.600</energySlopeLow>
7374
<prescale>1</prescale>
7475
<outputFileName>${outputFile}.triggers.pairs1</outputFileName>
75-
<!--<verbose>true</verbose>-->
76+
<verbose>true</verbose>
7677
</driver>
7778
<driver name="SimpleSVTReadout" type="org.hps.readout.svt.SimpleSvtReadout">
7879
<enablePileupCut>false</enablePileupCut>
@@ -91,5 +92,6 @@
9192
<writeSvtData>true</writeSvtData>
9293
<ecalMode>1</ecalMode>
9394
</driver>
95+
<driver name="InactiveSiHitReadout" type="org.hps.readout.ecal.InactiveSiHitReadout" />
9496
</drivers>
9597
</lcsim>

0 commit comments

Comments
 (0)