18 {
19 RecEmcHitMap::const_iterator ciHitMap;
20 RecEmcHitMap::const_iterator ciNeigh;
21 RecEmcHit aHit;
22
24
26 RecEmcIDVector::const_iterator ciNeighVec;
27
28 aMaxVec.clear();
29
30 vector<RecEmcHit> aHitVec, tmpHitVec;
31 vector<RecEmcHit>::const_iterator ciHitVec;
32
33 EmcRecNeighbor nhb;
34
35 for ( ciHitMap = aCluster.
Begin(); ciHitMap != aCluster.
End(); ++ciHitMap )
36 {
37
38
40 aHit = ciHitMap->second;
41
43 {
44
45 NeighVec.clear();
47
48
49 for ( ciNeighVec = NeighVec.begin(); ciNeighVec != NeighVec.end(); ++ciNeighVec )
50 {
51
52 ciNeigh = aCluster.
Find( *ciNeighVec );
53 if ( ciNeigh != aCluster.
End() )
54 {
55
56 if ( ciNeigh->second.getEnergy() > aHit.
getEnergy() ) {
max =
false; }
57 }
58 }
59 }
61
62
63 for ( ciHitVec = aHitVec.begin(); ciHitVec != aHitVec.end(); ciHitVec++ )
64 {
66 {
68 break;
69 }
70 }
71
72
73 if (
max ==
true ) { aHitVec.push_back( aHit ); }
74
75 }
76
77 sort( aHitVec.begin(), aHitVec.end(), greater<RecEmcHit>() );
78
79 for ( ciHitVec = aHitVec.begin(); ciHitVec != aHitVec.end(); ciHitVec++ )
80 { aMaxVec.push_back( ciHitVec->getCellId() ); }
81}
vector< RecEmcID > RecEmcIDVector
RecEmcIDVector GetNeighbors(const Identifier &id)
bool IsNeighbor(const Identifier &id1, const Identifier &id2)
RecEmcHitMap::const_iterator Find(const RecEmcID &CellId) const
RecEmcHitMap::const_iterator Begin() const
RecEmcHitMap::const_iterator End() const
RecEmcEnergy getEnergy() const
RecEmcID getCellId() const