67 G4ClassificationOfNewTrack classification = fWaiting;
71 if(aTrack->GetParentID()==0)
74 if((particleType==G4MuonPlus::MuonPlusDefinition())
75 ||(particleType==G4MuonMinus::MuonMinusDefinition()))
76 { classification = fUrgent; }
82 if(aTrack->GetParentID()!=0) {
break; }
83 if(aTrack->GetTrackStatus()==fSuspend) {
break; }
84 if(aTrack->GetDefinition()->GetPDGCharge()==0.) {
break; }
85 classification = fUrgent;
91 if(aTrack->GetParentID()==0)
93 classification = fUrgent;
98 classification = fUrgent;
101 classification = fKill;
103 return classification;
158 { G4cerr <<
"muonCollection NOT FOUND" << G4endl;
165 stackManager->clear();
169 stackManager->ReClassify();
185 { G4cerr <<
"trackerCollection NOT FOUND" << G4endl;
187 G4int nTrkhits =
fTrkHits->entries();
189 for(G4int j=0;j<nhits;j++)
191 G4ThreeVector hitPos = (*fMuonHits)[j]->GetPos();
193 for(G4int jj=0;(jj<nTrkhits)&&(nhitIn<=
fReqIso);jj++)
195 G4ThreeVector trkhitPos = (*fTrkHits)[jj]->GetPos();
196 if(trkhitPos.angle(hitPos)<
fAngRoI) nhitIn++;
203 stackManager->clear();
207 stackManager->ReClassify();
214 stackManager->ReClassify();