{
  "$schema": "https://ambiqai.github.io/helia-ui/schema/reference-model-1.json",
  "generatedFrom": {
    "sourceCommit": "aee921f9f6ddb72ad858bd66859e225a41d53074",
    "tool": "pyref",
    "version": "1.7.3"
  },
  "language": "python",
  "modules": [
    {
      "description": "",
      "name": "ArenaUsage",
      "path": "helia_aot.memory.defines.ArenaUsage",
      "submodules": [],
      "summary": "",
      "symbols": [
        {
          "description": "Metadata for a memory arena.\n\nProvisional: importable, but outside the compatibility promise; a minor release can change or remove it.",
          "examples": [],
          "id": "helia_aot.memory.defines.ArenaUsage",
          "kind": "class",
          "language": "python",
          "members": [
            {
              "description": "Runtime (kernel-visible) memory of the\narena.",
              "examples": [],
              "id": "helia_aot.memory.defines.ArenaUsage.memory",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "memory",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "memory: MemoryType = Field(..., description='Runtime memory of the arena.')",
              "source": {
                "line": 233,
                "path": "helia_aot/memory/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/aee921f9f6ddb72ad858bd66859e225a41d53074/helia_aot/memory/defines.py#L233"
              },
              "summary": ""
            },
            {
              "description": "Total bytes in this arena.",
              "examples": [],
              "id": "helia_aot.memory.defines.ArenaUsage.total_size",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "total_size",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "total_size: int = Field(default=0, description='Total bytes in this arena')",
              "source": {
                "line": 234,
                "path": "helia_aot/memory/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/aee921f9f6ddb72ad858bd66859e225a41d53074/helia_aot/memory/defines.py#L234"
              },
              "summary": ""
            },
            {
              "description": "Bytes actually used. For bump-allocated arenas\n(constant, persistent) this equals ``total_size``.",
              "examples": [],
              "id": "helia_aot.memory.defines.ArenaUsage.used",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "used",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "used: int = Field(default=0, description='Bytes actually used')",
              "source": {
                "line": 235,
                "path": "helia_aot/memory/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/aee921f9f6ddb72ad858bd66859e225a41d53074/helia_aot/memory/defines.py#L235"
              },
              "summary": ""
            },
            {
              "description": "Logical role of the arena.",
              "examples": [],
              "id": "helia_aot.memory.defines.ArenaUsage.role",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "role",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "role: ArenaRole = Field(default=ArenaRole.SCRATCH, description='Logical role of the arena (scratch | persistent | constant).')",
              "source": {
                "line": 236,
                "path": "helia_aot/memory/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/aee921f9f6ddb72ad858bd66859e225a41d53074/helia_aot/memory/defines.py#L236"
              },
              "summary": ""
            },
            {
              "description": "The cold-storage memory the\narena's contents are sourced from. For scratch and\npersistent arenas this equals ``memory`` (purely runtime,\nno source blob). For constant arenas it equals ``memory``\nin the cold case (arena buffer is the cold blob in place)\nand differs from ``memory`` in the staged case (arena\nbuffer is a writable runtime copy of a source blob in\n``source_memory``).",
              "examples": [],
              "id": "helia_aot.memory.defines.ArenaUsage.source_memory",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "source_memory",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "source_memory: MemoryType = Field(default=None, description=\"Cold-storage source memory for the arena's contents. Equals ``memory`` for scratch, persistent, and cold constant arenas; differs from ``memory`` for staged constant arenas where bytes are copied at boot from this source memory into the writable runtime arena. Defaults to None for backward compatibility with callers that construct ArenaUsage directly; the bundled GreedyPlanner always populates it.\")",
              "source": {
                "line": 240,
                "path": "helia_aot/memory/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/aee921f9f6ddb72ad858bd66859e225a41d53074/helia_aot/memory/defines.py#L240"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "helia_aot.memory.defines.ArenaUsage.alignment",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "alignment",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "alignment: int = Field(default=16, description='Resolved alignment of the arena base symbol (and floor for slot offsets within it). Stamped by the planner from max(implementation floor, platform.min_alignment, MemoryConstraint.arena_alignment).')",
              "source": {
                "line": 253,
                "path": "helia_aot/memory/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/aee921f9f6ddb72ad858bd66859e225a41d53074/helia_aot/memory/defines.py#L253"
              },
              "summary": ""
            },
            {
              "description": "True iff this arena has a distinct cold source memory.\n\nEquivalent to ``source_memory is not None and source_memory !=\nmemory``. Centralizes the cold-vs-staged predicate so\ntemplates and handlers do not duplicate it.\n\nFor scratch and persistent arenas this is always ``False``\n(they have no cold source). For constant arenas it\ndistinguishes the two emit shapes:\n\n- ``False`` (cold): the arena buffer itself is a\n  ``static const`` blob in cold storage.\n- ``True`` (staged): the arena buffer is a writable runtime\n  copy hydrated from a separate source blob in\n  ``source_memory``.",
              "examples": [],
              "id": "helia_aot.memory.defines.ArenaUsage.is_staged",
              "kind": "attribute",
              "language": "python",
              "members": [],
              "name": "is_staged",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "is_staged: bool",
              "source": {
                "line": 272,
                "path": "helia_aot/memory/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/aee921f9f6ddb72ad858bd66859e225a41d53074/helia_aot/memory/defines.py#L272"
              },
              "summary": "True iff this arena has a distinct cold source memory."
            },
            {
              "description": "Allocate a segment of the arena and return its offset",
              "examples": [],
              "id": "helia_aot.memory.defines.ArenaUsage.allocate",
              "kind": "method",
              "language": "python",
              "members": [],
              "name": "allocate",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "allocate(size: int) -> int",
              "source": {
                "line": 263,
                "path": "helia_aot/memory/defines.py",
                "url": "https://github.com/AmbiqAI/helia-aot/blob/aee921f9f6ddb72ad858bd66859e225a41d53074/helia_aot/memory/defines.py#L263"
              },
              "summary": "Allocate a segment of the arena and return its offset"
            }
          ],
          "name": "ArenaUsage",
          "params": [],
          "raises": [],
          "returns": [],
          "signature": "ArenaUsage()",
          "source": {
            "line": 212,
            "path": "helia_aot/memory/defines.py",
            "url": "https://github.com/AmbiqAI/helia-aot/blob/aee921f9f6ddb72ad858bd66859e225a41d53074/helia_aot/memory/defines.py#L212"
          },
          "summary": "Metadata for a memory arena."
        }
      ]
    }
  ],
  "name": "helia_aot"
}
