类 | |
| struct | PixelChunkAckReceipt |
| Counters returned after accepting a cumulative ACK. 更多... | |
| struct | PixelChunkReceiveReceipt |
| Receiver outcome after one possibly duplicate or out-of-order part. 更多... | |
| class | PixelChunkStreamCursor |
| Stateful revision cursor that projects one PixelWorld interest region. 更多... | |
| struct | PixelChunkStreamUpdate |
| One interest-stream update suitable for persistence or network transport. 更多... | |
| struct | PixelChunkTransferAck |
| Cumulative application ACK proving transfers were committed to replica authority. 更多... | |
| struct | PixelChunkTransferPart |
| One independently retransmittable part of an atomic Chunk transfer. 更多... | |
| struct | PixelChunkTransportConfig |
| Bounded application-level reliability policy layered over any byte transport. 更多... | |
| class | ReliablePixelChunkReceiver |
| Ordered atomic receiver with duplicate suppression and bounded out-of-order buffering. 更多... | |
| class | ReliablePixelChunkSender |
| Reliable sender retaining owning transfer parts and tombstones until application ACK. 更多... | |
枚举 | |
| enum class | PixelChunkArchiveCodec : std::uint8_t { None = 0 , Zstd = 1 } |
| Stable physical codec for one independently stored PixelWorld Chunk. 更多... | |
函数 | |
| eve::Result< eve::SnapshotEnvelope > | archiveChunkBatch (const eve::pixelworld::PixelChunkBatch &batch, eve::PersistentId instanceId, PixelChunkArchiveCodec codec, const eve::SnapshotHashProvider &hashProvider) |
Encode one authoritative batch as pixelworld:chunk-batch SnapshotEnvelope version 3. | |
| eve::Result< eve::pixelworld::PixelChunkBatch > | decodeChunkBatchArchive (const eve::SnapshotEnvelope &snapshot, const eve::SnapshotHashProvider &hashProvider) |
| Verify and decode a version 1, 2 or 3 Chunk-batch archive into an owning candidate. | |
枚举类型说明
◆ PixelChunkArchiveCodec
|
strong |
Stable physical codec for one independently stored PixelWorld Chunk.
| 枚举值 | |
|---|---|
| None | |
| Zstd | |
在文件 PixelWorldStreaming.h 第 16 行定义.
函数说明
◆ archiveChunkBatch()
| EVENGINE_API_PLATFORM eve::Result< eve::SnapshotEnvelope > eve::pixelworld_streaming::archiveChunkBatch | ( | const eve::pixelworld::PixelChunkBatch & | batch, |
| eve::PersistentId | instanceId, | ||
| PixelChunkArchiveCodec | codec, | ||
| const eve::SnapshotHashProvider & | hashProvider | ||
| ) |
Encode one authoritative batch as pixelworld:chunk-batch SnapshotEnvelope version 3.
- 参数
-
batch Canonical owning batch to persist. instanceId Stable world/save identity. codec Per-present-Chunk physical compression codec. hashProvider Injected digest used by the envelope and every decoded Chunk.
- 返回
- Integrity-sealed archive with independently compressed Chunk records.
在文件 PixelWorldArchive.cpp 第 150 行定义.
引用了 eve::pixelworld::PixelChunkBatch::catalogFingerprint, eve::pixelworld::PixelChunkBatch::chunks, eve::asset::compressEvpackChunk(), digest, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::pixelworld::PixelChunkBatch::fullResync, eve::InvalidArgument, key, eve::pixelworld::kPixelChunkSize, eve::makeSnapshotEnvelope(), None, payload, previous, eve::pixelworld::PixelChunkBatch::sourceLastEditSequence, eve::pixelworld::PixelChunkBatch::sourceRevision, eve::pixelworld::PixelChunkBatch::sourceSeed, eve::pixelworld::PixelChunkBatch::sourceTick, stored, eve::Unsupported , 以及 Zstd.
◆ decodeChunkBatchArchive()
| EVENGINE_API_PLATFORM eve::Result< eve::pixelworld::PixelChunkBatch > eve::pixelworld_streaming::decodeChunkBatchArchive | ( | const eve::SnapshotEnvelope & | snapshot, |
| const eve::SnapshotHashProvider & | hashProvider | ||
| ) |
Verify and decode a version 1, 2 or 3 Chunk-batch archive into an owning candidate.
- 备注
- Decoding is bounded and has no world side effects. Version 1 migrates with
sourceLastEditSequence == 0; versions 1 and 2 migrate withfullResync == false. Bad envelope/Chunk hashes fail before any authority write.
在文件 PixelWorldArchive.cpp 第 206 行定义.
引用了 eve::pixelworld::PixelChunkBatch::catalogFingerprint, cell, eve::pixelworld::PixelChunkSnapshot::cells, eve::pixelworld::PixelChunkBatch::chunks, cursor, decodedSize, eve::asset::decompressEvpackChunk(), digest, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::pixelworld::PixelChunkBatch::fullResync, eve::HashMismatch, index, eve::InvalidArgument, key, eve::pixelworld::kPixelChunkSize, None, object, eve::detail::Id128< Tag >::parse(), eve::ParseError, path, eve::SnapshotEnvelope::payload, previous, eve::pixelworld::PixelChunkSnapshot::removed, removed, eve::SnapshotEnvelope::revision, revision, eve::pixelworld::PixelChunkSnapshot::revision, root, eve::SnapshotEnvelope::schema, eve::SnapshotEnvelope::schemaVersion, seed, sequence, eve::pixelworld::PixelChunkBatch::sourceLastEditSequence, eve::pixelworld::PixelChunkBatch::sourceRevision, eve::pixelworld::PixelChunkBatch::sourceSeed, eve::pixelworld::PixelChunkBatch::sourceTick, stored, eve::Result< T >::success(), eve::SnapshotEnvelope::tick, eve::SnapshotEnvelope::type, eve::UnknownVersion, eve::Result< T >::value(), eve::detail::StrongUint64< Tag >::value(), eve::verifySnapshotEnvelope(), x, eve::pixelworld::PixelChunkSnapshot::x, y, eve::pixelworld::PixelChunkSnapshot::y , 以及 Zstd.