1
2
3
4
5
6
7
8
9
10 package org.lcsim.recon.tracking.digitization.sisim;
11
12 import java.util.ArrayList;
13 import java.util.HashSet;
14 import org.lcsim.event.SimTrackerHit;
15
16 import java.util.List;
17 import java.util.Set;
18
19
20
21
22
23 public class SiElectrodeData
24 {
25 int _charge = 0;
26 Set<SimTrackerHit> _simulated_hits = new HashSet<SimTrackerHit>();
27
28
29 public SiElectrodeData()
30 {
31 }
32
33 public SiElectrodeData(int charge)
34 {
35 _charge = charge;
36 }
37
38 public SiElectrodeData(int charge, SimTrackerHit simulated_hit)
39 {
40 _charge = charge;
41 _simulated_hits.add(simulated_hit);
42 }
43
44 public SiElectrodeData(int charge, Set<SimTrackerHit> simulated_hits)
45 {
46 _charge = charge;
47 _simulated_hits = simulated_hits;
48 }
49
50 public boolean isValid()
51 {
52 return (getCharge() != 0);
53 }
54
55 public int getCharge()
56 {
57 return _charge;
58 }
59
60 public Set<SimTrackerHit> getSimulatedHits()
61 {
62 return _simulated_hits;
63 }
64
65 public SiElectrodeData add(SiElectrodeData electrode_data)
66 {
67 this.add(electrode_data.getCharge(),electrode_data.getSimulatedHits());
68 return this;
69 }
70
71 public SiElectrodeData add(int charge, Set<SimTrackerHit> simulated_hits)
72 {
73 this.addCharge(charge);
74 for (SimTrackerHit hit : simulated_hits)
75 {
76 this.addSimulatedHit(hit);
77 }
78 return this;
79 }
80
81 public SiElectrodeData addCharge(int charge)
82 {
83 _charge += charge;
84 return this;
85 }
86
87 public SiElectrodeData addSimulatedHit(SimTrackerHit simulated_hit)
88 {
89 _simulated_hits.add(simulated_hit);
90 return this;
91 }
92
93 }