39 #include "StRandyTopMapMaker.h"
40 #include "StEventTypes.h"
41 #include "StMessMgr.h"
43 #include "StTrackGeometry.h"
44 #include "StTrackTopologyMap.h"
46 static const char rcsid[] =
"$Id: StRandyTopMapMaker.cxx,v 1.6 2007/04/28 17:56:15 perev Exp $";
55 StRandyTopMapMaker::~StRandyTopMapMaker() {
59 StRandyTopMapMaker::Init()
61 return StMaker::Init();
85 mEvent = (
StEvent *) GetInputDS(
"StEvent");
86 if (! mEvent)
return kStOK;
91 int mult = mEvent->trackNodes().size();
92 unsigned long mask2 = 0x80000000;
96 unsigned long map1, map2;
97 StPtrVecHit myHitVector;
98 StPtrVecHitIterator myHitIterator;
102 for (
unsigned long int icount=0; icount<(
unsigned long int)mult; icount++){
103 rTrack = mEvent->trackNodes()[icount]->track(global);
106 temp1 = rTrack->topologyMap().data(1) & mask2;
108 if (
int(temp1) )
continue;
112 for (ipad=0; ipad<46; ipad++) padRow[ipad] =
false;
113 myHitVector = rTrack->detectorInfo()->hits(kTpcId);
114 for (myHitIterator=myHitVector.begin(); myHitIterator!=myHitVector.end(); myHitIterator++) {
115 myHit = (
StTpcHit *)(*myHitIterator);
116 pad = myHit->padrow();
129 for (ipad=1; ipad<=24; ipad++) {
130 if ( padRow[ipad] ) {
131 map1 |= 1UL<<(ipad+7);
134 for (ipad=25; ipad<=45; ipad++) {
135 if ( padRow[ipad] ) {
136 map2 |= 1UL<<(ipad-25);
141 rTrack->setTopologyMap( aNewMap );
virtual void Clear(Option_t *option="")
User defined functions.
virtual void Clear(Option_t *option="")
User defined functions.