diff --git a/src/avalanche/peermanager.h b/src/avalanche/peermanager.h --- a/src/avalanche/peermanager.h +++ b/src/avalanche/peermanager.h @@ -57,15 +57,15 @@ struct Peer { PeerId peerid; - - uint32_t score; uint32_t index; Proof proof; Peer(PeerId peerid_, uint32_t index_, Proof proof_) - : peerid(peerid_), score(proof_.getScore()), index(index_), - proof(std::move(proof_)) {} + : peerid(peerid_), index(index_), proof(std::move(proof_)) {} + + const ProofId &getProofId() const { return proof.getId(); } + uint32_t getScore() const { return proof.getScore(); } }; struct proof_index { diff --git a/src/avalanche/peermanager.cpp b/src/avalanche/peermanager.cpp --- a/src/avalanche/peermanager.cpp +++ b/src/avalanche/peermanager.cpp @@ -151,7 +151,7 @@ uint64_t prevStop = 0; uint32_t i = 0; for (auto it = peers.begin(); it != peers.end(); it++) { - slots[i] = Slot(prevStop, it->score, it->peerid); + slots[i] = Slot(prevStop, it->getScore(), it->peerid); prevStop = slots[i].getStop(); peers.modify(it, [&](Peer &p) { p.index = i++; }); @@ -195,7 +195,7 @@ } // If the score do not match, same thing. - if (slots[p.index].getScore() != p.score) { + if (slots[p.index].getScore() != p.getScore()) { return false; } }