1 | // $Id: ELblTrackTriggerDataAdder.cc 2168 2005-10-10 16:28:03Z ejudd $ |
---|
2 | // Author: E.Judd 2005/07/22 |
---|
3 | |
---|
4 | /***************************************************************************** |
---|
5 | * ESAF: Euso Simulation and Analysis Framework * |
---|
6 | * * |
---|
7 | * Id: ELblTrackTriggerDataAdder * |
---|
8 | * Package: <packagename> * |
---|
9 | * Coordinator: <coordinator> * |
---|
10 | * * |
---|
11 | *****************************************************************************/ |
---|
12 | |
---|
13 | //_____________________________________________________________________________ |
---|
14 | // |
---|
15 | // ELblTrackTriggerDataAdder |
---|
16 | // |
---|
17 | // This class fills the ELblTrackTrigger branch of the ROOT output |
---|
18 | // |
---|
19 | // Config file parameters |
---|
20 | // ====================== |
---|
21 | // |
---|
22 | // <parameter name>: <parameter description> |
---|
23 | // -Valid options: <available options> |
---|
24 | // |
---|
25 | |
---|
26 | #include "ELblTrackTriggerDataAdder.hh" |
---|
27 | #include "LblTrackSegment.hh" |
---|
28 | #include "ELblTrackTrigger.hh" |
---|
29 | #include "ELblTrackSegment.hh" |
---|
30 | |
---|
31 | ClassImp(ELblTrackTriggerDataAdder) |
---|
32 | |
---|
33 | //_____________________________________________________________________________ |
---|
34 | ELblTrackTriggerDataAdder::ELblTrackTriggerDataAdder(LblTrackSegment* seg, Int_t cell_id, Int_t chip_id) |
---|
35 | : EFiller("ELblTrackTrigger") { |
---|
36 | // |
---|
37 | // Constructor |
---|
38 | // |
---|
39 | fLblTrack = seg; |
---|
40 | fChipId = chip_id; |
---|
41 | fCellId = cell_id; |
---|
42 | } |
---|
43 | |
---|
44 | //_____________________________________________________________________________ |
---|
45 | ELblTrackTriggerDataAdder::~ELblTrackTriggerDataAdder() { |
---|
46 | // |
---|
47 | // Destructor |
---|
48 | // |
---|
49 | } |
---|
50 | |
---|
51 | //_____________________________________________________________________________ |
---|
52 | void ELblTrackTriggerDataAdder::Fill(EFillable* f) { |
---|
53 | // |
---|
54 | // Filler |
---|
55 | // |
---|
56 | ELblTrackTrigger *trg = (ELblTrackTrigger*)f; |
---|
57 | |
---|
58 | if ( !fLblTrack ) return; |
---|
59 | |
---|
60 | //create a new track in the event |
---|
61 | new ( (*(trg->fLblTracks))[trg->fNumLblTracks++] ) ELblTrackSegment(); |
---|
62 | |
---|
63 | //fill track properties |
---|
64 | ELblTrackSegment& seg = *(ELblTrackSegment*)(*(trg->fLblTracks))[trg->fNumLblTracks-1]; |
---|
65 | |
---|
66 | seg.fCellId = fCellId; |
---|
67 | seg.fChipUid = fChipId; |
---|
68 | seg.fGtuStart = fLblTrack->GetGtuStart(); |
---|
69 | seg.fGtuEnd = fLblTrack->GetGtuEnd(); |
---|
70 | seg.fRowStart = fLblTrack->GetRowStart(); |
---|
71 | seg.fRowEnd = fLblTrack->GetRowEnd(); |
---|
72 | seg.fColStart = fLblTrack->GetColStart(); |
---|
73 | seg.fColEnd = fLblTrack->GetColEnd(); |
---|
74 | seg.fNumSegs = fLblTrack->GetNumSegs(); |
---|
75 | seg.fSum = fLblTrack->GetSum(); |
---|
76 | seg.fTriggerID = fLblTrack->GetTriggerID(); |
---|
77 | } |
---|