• OctoMY API
  • OctoMY API Reference
  • C++ Classes
  • OctoMY
  • StandaloneActivityContext
  • octomy::standalone::StandaloneActivityContext Class

    class octomy::standalone::StandaloneActivityContext

    The **Light provider** of octomy::activity::ActivityContext for standalone apps (§SAL-1, §AC-2). More...

    Header: #include <StandaloneActivityContext>
    Inherits: octomy::activity::ActivityContext

    Detailed Description

    The hub injects app services into a hosted widget through NodeActivityContext, an ActivityContext whose facility("name") forwards into a live Node. StandaloneActivityContext is the **standalone analog**: it exposes the *same* string-keyed facility seam so a hosting-agnostic app shell reaches its services the same way whether hosted or standalone — but it holds **no Node** (§AC-3.1). Every facility is one the standalone app itself owns and registers (batchQueue, confirm, toast, opalContext, ...); there is no Node to forward into, so there is no built-in facility table — the provider is a pure registry.

    This is D3's concrete form ([§SA-4](../../../../content/doc/internal/specs/standalone-consolidation/index.md#sa-4-locked-design-decisions)): the discriminator between hosted and standalone is *which context is installed*, not a bool flag.

    ## Ownership & lifetime

    The context is owned by the host (the StandaloneHarness / a StandaloneWindow) and outlives every activity it hands facilities to. Boundary objects the app owns (e.g. the batch queue) are registered as a **no-op-deleter** QSharedPointer so crossing the facility boundary does not transfer ownership — exactly as [§AS-A-2](../../../../content/doc/internal/specs/activity-stack-policy/api.md) prescribes and ConstructShell already does for its queue.

    See also octomy::activity::ActivityContext, NodeActivityContext, and octomy::standalone::StandaloneWindow.