载入中...
搜索中...
未找到
TerrainBakedMaskCache.h
浏览该文件的文档.
1#pragma once
2
3#include <memory>
4#include <string>
5#include "common/Result.h"
6
7namespace eve::procgen {
8class Heightmap;
9
15public:
25 TerrainBakedMaskCache& operator=(const TerrainBakedMaskCache&) = delete;
26
28 [[nodiscard]] Result<int> store(const std::string& terrainId, const std::string& maskGuid,
29 const Heightmap& raster);
31 [[nodiscard]] Result<int> markDirty(const std::string& maskGuid);
33 [[nodiscard]] Result<int> erase(const std::string& terrainId, const std::string& maskGuid);
35 void clear();
37 [[nodiscard]] int getEntryCount() const noexcept;
44 [[nodiscard]] Result<int> copyMask(const std::string& terrainId, const std::string& maskGuid,
45 Heightmap& output) const;
46
47private:
48 struct Impl;
49 std::unique_ptr<Impl> impl_;
50};
51} // namespace eve::procgen
std::string output
#define EVENGINE_API_DOMAINS
Definition Export.h:110
Move-only, checked operation results for the common layer.
Move-only operation result carrying either a value or Status.
Definition Result.h:155
In-memory terrain heightmap: a dense float grid (row-major, index = y * width + x) materialized from ...
Definition Heightmap.h:21
Own Pcg-style per-terrain baked scalar masks keyed by stable terrain and mask identities....
~TerrainBakedMaskCache()
Terrain baked mask cache.
TerrainBakedMaskCache(TerrainBakedMaskCache &&) noexcept
Terrain baked mask cache.