Skip to content
Brass Orrery

Orrery Terrain · OrreryTerrainCore module · class

Native::

IJoinReceiveStore

Experimental

Where a joiner keeps the save it receives: a file the reader appends each arrived run of save bytes to, off the game thread (FJoinStreamReader::Drain), so the joiner holds the bytes on their way rather than the save, and the world loaded from the stream pages its codes from it.

Declaration

class IJoinReceiveStore
Header
#include "Native/Net/NetJoin.h"
Module
PublicDependencyModuleNames.Add("OrreryTerrainCore"); in your module’s Build.cs.
Stability
Experimental: supported, may change in a minor version, with a changelog line.
Thread
Made and written on the drain's thread, one call at a time; ReadAt on any thread, also while a WriteAt runs, and only of bytes a WriteAt wrote.

Description

The shell's store is a file under Saved/ (FTerrainClientJoinFile).

Offsets are the store's own: the reader writes runs back to back in the order they arrived, from 0, and keeps where each one went. Tier 1. Made and written on the drain's thread, one call at a time; ReadAt on any thread, also while a WriteAt runs, and only of bytes a WriteAt wrote. Destroyed with the reader's file, on whichever thread lets that go last (the reader, a drain, a check, or the world loaded from it), so a store may delete its bytes in its destructor.

Functions