X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fworld%2FChunkStore.hpp;h=79a9db1d1373ccb859705a06acf3deb4d115d201;hb=b94a7dc7daad9ae9be90a39d723e332dae375325;hp=3bbe96d8ee0068194a2a3f12303f81dc4543bf80;hpb=9240fdf2e68ee014da0d0a89a7fb2f29ebf28e2d;p=blank.git diff --git a/src/world/ChunkStore.hpp b/src/world/ChunkStore.hpp index 3bbe96d..79a9db1 100644 --- a/src/world/ChunkStore.hpp +++ b/src/world/ChunkStore.hpp @@ -20,15 +20,16 @@ public: ChunkStore &operator =(const ChunkStore &) = delete; public: - ChunkIndex &MakeIndex(const Chunk::Pos &base, int extent); + ChunkIndex &MakeIndex(const ExactLocation::Coarse &base, int extent); void UnregisterIndex(ChunkIndex &); - ChunkIndex *ClosestIndex(const Chunk::Pos &pos); + ChunkIndex *ClosestIndex(const ExactLocation::Coarse &pos); /// returns nullptr if given position is not loaded - Chunk *Get(const Chunk::Pos &); + Chunk *Get(const ExactLocation::Coarse &) noexcept; + const Chunk *Get(const ExactLocation::Coarse &) const noexcept; /// returns nullptr if given position is not indexed - Chunk *Allocate(const Chunk::Pos &); + Chunk *Allocate(const ExactLocation::Coarse &); std::list::iterator begin() noexcept { return loaded.begin(); } std::list::iterator end() noexcept { return loaded.end(); } @@ -44,7 +45,7 @@ public: /// get coordinates of a missing chunk /// this will return garbage if none are actually missing - Chunk::Pos NextMissing() noexcept; + ExactLocation::Coarse NextMissing() noexcept; void Clean();