#include "fiko/istakip/depo.hpp" #include namespace fiko::istakip { bool DepoBellek::kaydet(const IsKayit& k) { kayitlar_[k.kimlik] = k; return true; } bool DepoBellek::bul(uint64_t kimlik, IsKayit& out) const { const auto it = kayitlar_.find(kimlik); if (it == kayitlar_.end()) return false; out = it->second; return true; } std::vector DepoBellek::surumdenBeri(uint64_t surum) const { std::vector sonuc; for (const auto& [kimlik, k] : kayitlar_) if (k.surum > surum) sonuc.push_back(k); std::sort(sonuc.begin(), sonuc.end(), [](const IsKayit& a, const IsKayit& b) { return a.surum < b.surum; }); return sonuc; } uint64_t DepoBellek::sonSurum() const { uint64_t s = 0; for (const auto& [kimlik, k] : kayitlar_) s = std::max(s, k.surum); return s; } uint64_t DepoBellek::sonKimlik() const { uint64_t s = 0; for (const auto& [kimlik, k] : kayitlar_) s = std::max(s, kimlik); return s; } uint64_t DepoBellek::istemciSira(uint64_t istemciNo) const { const auto it = istemciSira_.find(istemciNo); return it == istemciSira_.end() ? 0 : it->second; } bool DepoBellek::istemciSiraKaydet(uint64_t istemciNo, uint64_t sira) { istemciSira_[istemciNo] = sira; return true; } } // namespace fiko::istakip