载入中...
搜索中...
未找到
TerrainBakedMaskCache.cpp
浏览该文件的文档.
12bool validIdentity(const std::string& value) { return !value.empty() && value.size() <= kMaxIdentityLength; }
34TerrainBakedMaskCache& TerrainBakedMaskCache::operator=(TerrainBakedMaskCache&&) noexcept = default;
36Result<int> TerrainBakedMaskCache::store(const std::string& terrainId, const std::string& maskGuid,
55 if (!impl_ || !validIdentity(maskGuid)) return invalid("terrain.bakedMask.markDirty: bounded mask GUID required");
65Result<int> TerrainBakedMaskCache::erase(const std::string& terrainId, const std::string& maskGuid) {
83Result<int> TerrainBakedMaskCache::copyMask(const std::string& terrainId, const std::string& maskGuid,
88 const auto it = std::find_if(impl_->entries.begin(), impl_->entries.end(), [&](const auto& entry) {
static Diagnostic error(DiagnosticCode code, std::string message, std::string path={}, DiagnosticDetails details={}, std::string source={})
Construct an error diagnostic with the standard error severity.
Definition Diagnostic.h:125
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
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....
Definition TerrainBakedMaskCache.h:14
~TerrainBakedMaskCache()
Terrain baked mask cache.
int getEntryCount() const noexcept
Return the number of retained entries, including dirty entries.
Definition TerrainBakedMaskCache.cpp:79
Result< int > markDirty(const std::string &maskGuid)
Mark every matching GUID entry stale; stale reads fail until a provider stores a replacement.
Definition TerrainBakedMaskCache.cpp:54
Result< int > erase(const std::string &terrainId, const std::string &maskGuid)
Remove one exact entry.
Definition TerrainBakedMaskCache.cpp:65
Result< int > copyMask(const std::string &terrainId, const std::string &maskGuid, Heightmap &output) const
Copy one fresh entry into any positive output resolution using Clamp/Bilinear sampling.
Definition TerrainBakedMaskCache.cpp:83
double textureSample(const Heightmap &map, double u, double v)
Texture sample.
Definition TerrainRasterInternal.h:38
Result< int > publish(Heightmap &target, std::vector< float > candidate)
Publish.
Definition TerrainRasterInternal.h:62
Definition EvpackPointGraphLoader.h:12
@ InvalidArgument
@ NotFound
Definition Container.h:602
std::string terrainId
Definition TerrainBakedMaskCache.cpp:23
bool dirty
Definition TerrainBakedMaskCache.cpp:26
std::string maskGuid
Definition TerrainBakedMaskCache.cpp:24
Heightmap raster
Definition TerrainBakedMaskCache.cpp:25
std::vector< Entry > entries
Definition TerrainBakedMaskCache.cpp:28