in forge/blade/lib/stattrak.py [0:0]
def updateExchange(self, exchange):
self.exchange = PriorityQueue()
buyOffers = exchange.buyOffers
sellOffers = exchange.sellOffers
buyKeys, sellKeys = buyOffers.keys(), sellOffers.keys()
exchangeKeys = list(set(list(buyKeys) + list(sellKeys)))
for key in exchangeKeys:
keyBuys, keySells = buyOffers[key], sellOffers[key]
topBuy = keyBuys.peek()
topSell = keySells.peek()
if topBuy is not None:
numBuy, maxBuyPrice = topBuy.quantLeft, topBuy.itemPrice
item = topBuy.item
else:
numBuy, maxBuyPrice = 0, 0
if topSell is not None:
numSell, minSellPrice = topSell.quantLeft, topSell.itemPrice
item = topSell.item
else:
numSell, minSellPrice = 0, 0
#Compute total buy value
totalBuy = 0
for e in keyBuys.queue:
totalBuy += e.coffer
entry = ExchangeEntry(item, numBuy, numSell,
maxBuyPrice, minSellPrice)
self.exchange.put(entry, totalBuy)