Nursery: Initial integration

StimulusProducer: syncAwaitAllSettlements should pump caller io_context
This commit is contained in:
2026-06-09 11:19:42 -04:00
parent 5b81ea893c
commit 91fc655b25
15 changed files with 326 additions and 383 deletions
@@ -82,13 +82,9 @@ public:
const std::shared_ptr<StimulusBuffer>& buffer) override;
protected:
void stimFrameProductionTimesliceInd() override;
void holdProduceFrameCReq();
sscl::co::NonViralNonPostingInvoker produceFrameCReq(
std::exception_ptr& exceptionPtr,
std::function<void()> completion);
sscl::co::ViralNonPostingInvoker<void>
stimFrameProductionTimesliceCInd(
sscl::SyncCancelerForAsyncWork &canceler) override;
public:
size_t nDgramsPerStagingBufferFrame;
@@ -112,9 +108,6 @@ public:
lightAmbienceStimulusBuffer;
std::atomic<std::shared_ptr<PcloudDarkAmbienceStimulusBuffer>>
darkAmbienceStimulusBuffer;
std::optional<sscl::co::NonViralNonPostingInvoker> activeProduceFrameInvoker;
std::exception_ptr produceFrameExceptionPtr;
};
} // namespace stim_buff