{
  "$schema": "https://ambiqai.github.io/helia-ui/schema/reference-model-1.json",
  "generatedFrom": {
    "sourceCommit": "70611e608778a432566e30965e8b4bc7ea75aa36",
    "tool": "doxyref",
    "version": "1.17.0"
  },
  "language": "cpp",
  "modules": [
    {
      "description": "Arena allocation and memory-planner integration.",
      "name": "MicroAllocator",
      "path": "microallocator",
      "submodules": [],
      "summary": "Arena allocation and memory-planner integration.",
      "symbols": [
        {
          "description": "Allocator responsible for allocating memory for all intermediate tensors necessary to invoke a model.\n\nThe lifetime of the model, tensor arena and error reporter must be at least as long as that of the allocator object, since the allocator needs them to be accessible during its entire lifetime.\n\nThe `MicroAllocator` simply plans out additional allocations that are required to standup a model for inference in TF Micro. This class currently relies on an additional allocator - SingleArenaBufferAllocator - for all allocations from an arena. These allocations are divided into head (non-persistent) and tail (persistent) regions:\n\nMemory layout to help understand how it works This information could change in the future version. ************** .memory_allocator->GetBuffer() Tensors/Scratch buffers (head) ************** .head_watermark unused memory ************** .memory_allocator->GetBuffer() + ->GetMaxBufferSize()\n\n- ->GetDataSize() persistent area (tail) ************** .memory_allocator->GetBuffer() + ->GetMaxBufferSize()",
          "examples": [],
          "id": "tflite::MicroAllocator",
          "kind": "class",
          "language": "cpp",
          "members": [
            {
              "description": "Creates a `MicroAllocator` instance from a given tensor arena. This arena will be managed by the created instance. The `GreedyMemoryPlanner` will by default be used and created on the arena. Note: Please use alignas(16) to make sure tensor_arena is 16 bytes aligned, otherwise some head room will be wasted. TODO(b/157615197): Cleanup constructor + factory usage.",
              "examples": [],
              "id": "tflite::MicroAllocator::Create--classtflite_1_1MicroAllocator_1a421bb109a0a7e5132d8489e435abf97f",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "Create",
              "params": [
                {
                  "description": "",
                  "name": "tensor_arena",
                  "type": "uint8_t *"
                },
                {
                  "description": "",
                  "name": "arena_size",
                  "type": "size_t"
                },
                {
                  "default": "MemoryPlannerType::kGreedy",
                  "description": "",
                  "name": "memory_planner_type",
                  "type": "MemoryPlannerType"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "static MicroAllocator * tflite::MicroAllocator::Create(\n    uint8_t *tensor_arena,\n    size_t arena_size,\n    MemoryPlannerType memory_planner_type = MemoryPlannerType::kGreedy\n)",
              "source": {
                "line": 136,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L136"
              },
              "summary": "Creates a MicroAllocator instance from a given tensor arena."
            },
            {
              "description": "Creates a `MicroAllocator` instance from a given tensor arena and a given MemoryPlanner. This arena will be managed by the created instance. Note: Please use alignas(16) to make sure tensor_arena is 16 bytes aligned, otherwise some head room will be wasted.",
              "examples": [],
              "id": "tflite::MicroAllocator::Create--classtflite_1_1MicroAllocator_1a018b9d20e8d9ebd17360948e622237b7",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "Create",
              "params": [
                {
                  "description": "",
                  "name": "tensor_arena",
                  "type": "uint8_t *"
                },
                {
                  "description": "",
                  "name": "arena_size",
                  "type": "size_t"
                },
                {
                  "description": "",
                  "name": "memory_planner",
                  "type": "MicroMemoryPlanner *"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "static MicroAllocator * tflite::MicroAllocator::Create(\n    uint8_t *tensor_arena,\n    size_t arena_size,\n    MicroMemoryPlanner *memory_planner\n)",
              "source": {
                "line": 144,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L144"
              },
              "summary": "Creates a MicroAllocator instance from a given tensor arena and a given MemoryPlanner."
            },
            {
              "description": "Creates a `MicroAllocator` instance using the provided SingleArenaBufferAllocator instance and the MemoryPlanner. This allocator instance will use the SingleArenaBufferAllocator instance to manage allocations internally.",
              "examples": [],
              "id": "tflite::MicroAllocator::Create--classtflite_1_1MicroAllocator_1a35bcf5002a662e06502afefed8f643c6",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "Create",
              "params": [
                {
                  "description": "",
                  "name": "memory_allocator",
                  "type": "SingleArenaBufferAllocator *"
                },
                {
                  "description": "",
                  "name": "memory_planner",
                  "type": "MicroMemoryPlanner *"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "static MicroAllocator * tflite::MicroAllocator::Create(\n    SingleArenaBufferAllocator *memory_allocator,\n    MicroMemoryPlanner *memory_planner\n)",
              "source": {
                "line": 151,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L151"
              },
              "summary": "Creates a MicroAllocator instance using the provided SingleArenaBufferAllocator instance and the MemoryPlanner."
            },
            {
              "description": "Creates a `MicroAllocator` instance using the provided SingleArenaBufferAllocator instance and the MemoryPlanner. This allocator instance will use the SingleArenaBufferAllocator instance to manage allocations internally.",
              "examples": [],
              "id": "tflite::MicroAllocator::Create--classtflite_1_1MicroAllocator_1a91f02616f35cb777c2c9f2607f18588c",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "Create",
              "params": [
                {
                  "description": "",
                  "name": "persistent_tensor_arena",
                  "type": "uint8_t *"
                },
                {
                  "description": "",
                  "name": "persistent_arena_size",
                  "type": "size_t"
                },
                {
                  "description": "",
                  "name": "non_persistent_tensor_arena",
                  "type": "uint8_t *"
                },
                {
                  "description": "",
                  "name": "non_persistent_arena_size",
                  "type": "size_t"
                },
                {
                  "default": "MemoryPlannerType::kGreedy",
                  "description": "",
                  "name": "memory_planner_type",
                  "type": "MemoryPlannerType"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "static MicroAllocator * tflite::MicroAllocator::Create(\n    uint8_t *persistent_tensor_arena,\n    size_t persistent_arena_size,\n    uint8_t *non_persistent_tensor_arena,\n    size_t non_persistent_arena_size,\n    MemoryPlannerType memory_planner_type = MemoryPlannerType::kGreedy\n)",
              "source": {
                "line": 158,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L158"
              },
              "summary": "Creates a MicroAllocator instance using the provided SingleArenaBufferAllocator instance and the MemoryPlanner."
            },
            {
              "description": "Returns the fixed amount of memory overhead of `MicroAllocator`.",
              "examples": [],
              "id": "tflite::MicroAllocator::GetDefaultTailUsage",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "GetDefaultTailUsage",
              "params": [
                {
                  "description": "",
                  "name": "is_memory_planner_given",
                  "type": "bool"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "static size_t tflite::MicroAllocator::GetDefaultTailUsage(bool is_memory_planner_given)",
              "source": {
                "line": 164,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L164"
              },
              "summary": "Returns the fixed amount of memory overhead of MicroAllocator."
            },
            {
              "description": "Returns True if the `MicroAllocator` uses a `LinearMemoryPlanner`(is compatible with the PerserveAllTensors flag / feature ) and False otherwise.",
              "examples": [],
              "id": "tflite::MicroAllocator::preserves_all_tensor",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "preserves_all_tensor",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "bool tflite::MicroAllocator::preserves_all_tensor() const",
              "source": {
                "line": 168,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L168"
              },
              "summary": "Returns True if the MicroAllocator uses a LinearMemoryPlanner(is compatible with the PerserveAllTensors flag / feature ) and False otherwise."
            },
            {
              "description": "Allocates internal resources required for model inference for each subgraph from the arena.\n\nThis method will run through the flatbuffer data supplied in the model to properly allocate tensor, node, and op registration data. This method is expected to be followed with a call to `FinishModelAllocation()` Returns a pointer to an array of `SubgraphAllocations` (also stored in the tail of the arena) where each index corresponds to a different subgraph in the model. Return value is nullptr if the allocations failed.",
              "examples": [],
              "id": "tflite::MicroAllocator::StartModelAllocation",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "StartModelAllocation",
              "params": [
                {
                  "description": "",
                  "name": "model",
                  "type": "const Model *"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "SubgraphAllocations * tflite::MicroAllocator::StartModelAllocation(const Model *model)",
              "source": {
                "line": 181,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L181"
              },
              "summary": "Allocates internal resources required for model inference for each subgraph from the arena."
            },
            {
              "description": "Finish allocating internal resources required for model inference.\n\n-Plan the memory for activation tensors and scratch buffers. -Update eval tensors for each subgraph based on planned offsets. -Allocate scratch buffer handles array and update based on planned offsets.\n\nThis method should be called after assigning model resources in `StartModelAllocation()`. The subgraph_allocations pointer should be the value passed into this class during `StartModelAllocation()`. Scratch buffer handles are stored in the out-param `scratch_buffer_handles` array which is allocated in this method. This value will be used in `GetScratchBuffer` call to retrieve scratch buffers.",
              "examples": [],
              "id": "tflite::MicroAllocator::FinishModelAllocation",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "FinishModelAllocation",
              "params": [
                {
                  "description": "",
                  "name": "model",
                  "type": "const Model *"
                },
                {
                  "description": "",
                  "name": "subgraph_allocations",
                  "type": "SubgraphAllocations *"
                },
                {
                  "description": "",
                  "name": "scratch_buffer_handles",
                  "type": "ScratchBufferHandle **"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "TfLiteStatus tflite::MicroAllocator::FinishModelAllocation(\n    const Model *model,\n    SubgraphAllocations *subgraph_allocations,\n    ScratchBufferHandle **scratch_buffer_handles\n)",
              "source": {
                "line": 195,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L195"
              },
              "summary": "Finish allocating internal resources required for model inference."
            },
            {
              "description": "Allocates a `TfLiteTensor` struct and populates the returned value with properties from the model flatbuffer. This struct is allocated from persistent arena memory is only guaranteed for the lifetime of the application. The eval_tensors pointer should be the value passed into this class during `StartModelAllocation()` and contains the source-of-truth for buffers.",
              "examples": [],
              "id": "tflite::MicroAllocator::AllocatePersistentTfLiteTensor",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "AllocatePersistentTfLiteTensor",
              "params": [
                {
                  "description": "",
                  "name": "model",
                  "type": "const Model *"
                },
                {
                  "description": "",
                  "name": "subgraph_allocations",
                  "type": "const SubgraphAllocations *"
                },
                {
                  "description": "",
                  "name": "tensor_index",
                  "type": "int"
                },
                {
                  "description": "",
                  "name": "subgraph_index",
                  "type": "int"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "virtual TfLiteTensor * tflite::MicroAllocator::AllocatePersistentTfLiteTensor(\n    const Model *model,\n    const SubgraphAllocations *subgraph_allocations,\n    int tensor_index,\n    int subgraph_index\n)",
              "source": {
                "line": 205,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L205"
              },
              "summary": "Allocates a TfLiteTensor struct and populates the returned value with properties from the model flatbuffer."
            },
            {
              "description": "Allocates a `TfLiteTensor` struct and populates the returned value with properties from the model flatbuffer. This struct is allocated from temporary arena memory is only guaranteed until a call is made to `ResetTempAllocations()`. Subgraph_allocations contains the array of TfLiteEvalTensors. If the newly allocated temp at the specified subgraph and tensor index is already present int the `TfLiteEvalTensor` array, its data buffer will be reused.",
              "examples": [],
              "id": "tflite::MicroAllocator::AllocateTempTfLiteTensor",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "AllocateTempTfLiteTensor",
              "params": [
                {
                  "description": "",
                  "name": "model",
                  "type": "const Model *"
                },
                {
                  "description": "",
                  "name": "subgraph_allocations",
                  "type": "const SubgraphAllocations *"
                },
                {
                  "description": "",
                  "name": "tensor_index",
                  "type": "int"
                },
                {
                  "description": "",
                  "name": "subgraph_index",
                  "type": "int"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "virtual TfLiteTensor * tflite::MicroAllocator::AllocateTempTfLiteTensor(\n    const Model *model,\n    const SubgraphAllocations *subgraph_allocations,\n    int tensor_index,\n    int subgraph_index\n)",
              "source": {
                "line": 216,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L216"
              },
              "summary": "Allocates a TfLiteTensor struct and populates the returned value with properties from the model flatbuffer."
            },
            {
              "description": "",
              "examples": [],
              "id": "tflite::MicroAllocator::DeallocateTempTfLiteTensor",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "DeallocateTempTfLiteTensor",
              "params": [
                {
                  "description": "",
                  "name": "",
                  "type": "TfLiteTensor *"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "virtual void tflite::MicroAllocator::DeallocateTempTfLiteTensor(TfLiteTensor *)",
              "source": {
                "line": 220,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L220"
              },
              "summary": ""
            },
            {
              "description": "Returns a pointer to a buffer from the temporary arena memory and is only guaranteed until a call is made to `ResetTempAllocations()`.",
              "examples": [],
              "id": "tflite::MicroAllocator::AllocateTempBuffer",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "AllocateTempBuffer",
              "params": [
                {
                  "description": "",
                  "name": "size",
                  "type": "size_t"
                },
                {
                  "description": "",
                  "name": "alignment",
                  "type": "size_t"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "virtual uint8_t * tflite::MicroAllocator::AllocateTempBuffer(size_t size, size_t alignment)",
              "source": {
                "line": 224,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L224"
              },
              "summary": "Returns a pointer to a buffer from the temporary arena memory and is only guaranteed until a call is made to ResetTempAllocations()."
            },
            {
              "description": "Signals that the temporary buffer no longer needed.",
              "examples": [],
              "id": "tflite::MicroAllocator::DeallocateTempBuffer",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "DeallocateTempBuffer",
              "params": [
                {
                  "description": "",
                  "name": "buffer",
                  "type": "uint8_t *"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "virtual void tflite::MicroAllocator::DeallocateTempBuffer(uint8_t *buffer)",
              "source": {
                "line": 227,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L227"
              },
              "summary": "Signals that the temporary buffer no longer needed."
            },
            {
              "description": "Resets all temporary allocations. This method should be called after a chain of temp allocations (e.g. chain of `TfLiteTensor` objects via AllocateTfLiteTensor()).",
              "examples": [],
              "id": "tflite::MicroAllocator::ResetTempAllocations",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "ResetTempAllocations",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "virtual TfLiteStatus tflite::MicroAllocator::ResetTempAllocations()",
              "source": {
                "line": 232,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L232"
              },
              "summary": "Resets all temporary allocations."
            },
            {
              "description": "Returns true if all temporary buffers including temp `TfLiteTensor` are already deallocated.",
              "examples": [],
              "id": "tflite::MicroAllocator::IsAllTempDeallocated",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "IsAllTempDeallocated",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "virtual bool tflite::MicroAllocator::IsAllTempDeallocated()",
              "source": {
                "line": 236,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L236"
              },
              "summary": "Returns true if all temporary buffers including temp TfLiteTensor are already deallocated."
            },
            {
              "description": "Allocates persistent buffer which has the same life time as the allocator. The memory is immediately available and is allocated from the tail of the arena.",
              "examples": [],
              "id": "tflite::MicroAllocator::AllocatePersistentBuffer",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "AllocatePersistentBuffer",
              "params": [
                {
                  "description": "",
                  "name": "bytes",
                  "type": "size_t"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "virtual void * tflite::MicroAllocator::AllocatePersistentBuffer(size_t bytes)",
              "source": {
                "line": 241,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L241"
              },
              "summary": "Allocates persistent buffer which has the same life time as the allocator."
            },
            {
              "description": "Register a scratch buffer of size `bytes` for Node with `node_id`. This method only requests a buffer with a given size to be used after a model has finished allocation via `FinishModelAllocation()`. All requested buffers will be accessible by the out-param in that method.",
              "examples": [],
              "id": "tflite::MicroAllocator::RequestScratchBufferInArena",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "RequestScratchBufferInArena",
              "params": [
                {
                  "description": "",
                  "name": "bytes",
                  "type": "size_t"
                },
                {
                  "description": "",
                  "name": "subgraph_idx",
                  "type": "int"
                },
                {
                  "description": "",
                  "name": "buffer_idx",
                  "type": "int *"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "TfLiteStatus tflite::MicroAllocator::RequestScratchBufferInArena(size_t bytes, int subgraph_idx, int *buffer_idx)",
              "source": {
                "line": 247,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L247"
              },
              "summary": "Register a scratch buffer of size bytes for Node with nodeid."
            },
            {
              "description": "Finish allocating a specific `NodeAndRegistration` prepare block (kernel entry for a model) with a given node ID. This call ensures that any scratch buffer requests and temporary allocations are handled and ready for the next node prepare block.",
              "examples": [],
              "id": "tflite::MicroAllocator::FinishPrepareNodeAllocations",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "FinishPrepareNodeAllocations",
              "params": [
                {
                  "description": "",
                  "name": "node_id",
                  "type": "int"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "TfLiteStatus tflite::MicroAllocator::FinishPrepareNodeAllocations(int node_id)",
              "source": {
                "line": 254,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L254"
              },
              "summary": "Finish allocating a specific NodeAndRegistration prepare block (kernel entry for a model) with a given node ID."
            },
            {
              "description": "Returns the arena usage in bytes, only available after `FinishModelAllocation`. Otherwise, it will return 0.",
              "examples": [],
              "id": "tflite::MicroAllocator::used_bytes",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "used_bytes",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "size_t tflite::MicroAllocator::used_bytes() const",
              "source": {
                "line": 258,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L258"
              },
              "summary": "Returns the arena usage in bytes, only available after FinishModelAllocation."
            },
            {
              "description": "",
              "examples": [],
              "id": "tflite::MicroAllocator::GetBuiltinDataAllocator",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "GetBuiltinDataAllocator",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "TfLiteBridgeBuiltinDataAllocator * tflite::MicroAllocator::GetBuiltinDataAllocator()",
              "source": {
                "line": 260,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L260"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "tflite::MicroAllocator::MicroAllocator--classtflite_1_1MicroAllocator_1a18615b3ce4daf12e3d715e09600366c3",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "MicroAllocator",
              "params": [
                {
                  "description": "",
                  "name": "memory_allocator",
                  "type": "SingleArenaBufferAllocator *"
                },
                {
                  "description": "",
                  "name": "memory_planner",
                  "type": "MicroMemoryPlanner *"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "tflite::MicroAllocator::MicroAllocator(SingleArenaBufferAllocator *memory_allocator, MicroMemoryPlanner *memory_planner)",
              "source": {
                "line": 263,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L263"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "tflite::MicroAllocator::MicroAllocator--classtflite_1_1MicroAllocator_1a240a5f8a03e3962648a92cb83cdd9d1e",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "MicroAllocator",
              "params": [
                {
                  "description": "",
                  "name": "persistent_buffer_allocator",
                  "type": "IPersistentBufferAllocator *"
                },
                {
                  "description": "",
                  "name": "non_persistent_buffer_allocator",
                  "type": "INonPersistentBufferAllocator *"
                },
                {
                  "description": "",
                  "name": "memory_planner",
                  "type": "MicroMemoryPlanner *"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "tflite::MicroAllocator::MicroAllocator(\n    IPersistentBufferAllocator *persistent_buffer_allocator,\n    INonPersistentBufferAllocator *non_persistent_buffer_allocator,\n    MicroMemoryPlanner *memory_planner\n)",
              "source": {
                "line": 265,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L265"
              },
              "summary": ""
            },
            {
              "description": "",
              "examples": [],
              "id": "tflite::MicroAllocator::~MicroAllocator",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "~MicroAllocator",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "virtual tflite::MicroAllocator::~MicroAllocator()",
              "source": {
                "line": 268,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L268"
              },
              "summary": ""
            },
            {
              "description": "Allocates an array in the arena to hold pointers to the node and registration pointers required to represent the inference graph of the model.",
              "examples": [],
              "id": "tflite::MicroAllocator::AllocateNodeAndRegistrations",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "AllocateNodeAndRegistrations",
              "params": [
                {
                  "description": "",
                  "name": "model",
                  "type": "const Model *"
                },
                {
                  "description": "",
                  "name": "subgraph_allocations",
                  "type": "SubgraphAllocations *"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "virtual TfLiteStatus tflite::MicroAllocator::AllocateNodeAndRegistrations(\n    const Model *model,\n    SubgraphAllocations *subgraph_allocations\n)",
              "source": {
                "line": 282,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L282"
              },
              "summary": "Allocates an array in the arena to hold pointers to the node and registration pointers required to represent the inference graph of the model."
            },
            {
              "description": "Allocates the list of persistent TfLiteEvalTensors that are used for the \"eval\" phase of model inference. These structs will be the source of truth for all tensor buffers.",
              "examples": [],
              "id": "tflite::MicroAllocator::AllocateTfLiteEvalTensors",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "AllocateTfLiteEvalTensors",
              "params": [
                {
                  "description": "",
                  "name": "model",
                  "type": "const Model *"
                },
                {
                  "description": "",
                  "name": "subgraph_allocations",
                  "type": "SubgraphAllocations *"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "virtual TfLiteStatus tflite::MicroAllocator::AllocateTfLiteEvalTensors(\n    const Model *model,\n    SubgraphAllocations *subgraph_allocations\n)",
              "source": {
                "line": 288,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L288"
              },
              "summary": "Allocates the list of persistent TfLiteEvalTensors that are used for the \"eval\" phase of model inference."
            },
            {
              "description": "Allocates persistent tensor buffers for variable tensors in the subgraph. Online and offline variable tensors are handled differently hence the offline_planner_offsets parameter is needed.",
              "examples": [],
              "id": "tflite::MicroAllocator::AllocateVariables",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "AllocateVariables",
              "params": [
                {
                  "description": "",
                  "name": "subgraph",
                  "type": "const SubGraph *"
                },
                {
                  "description": "",
                  "name": "eval_tensors",
                  "type": "TfLiteEvalTensor *"
                },
                {
                  "description": "",
                  "name": "offline_planner_offsets",
                  "type": "const int32_t *"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "virtual TfLiteStatus tflite::MicroAllocator::AllocateVariables(\n    const SubGraph *subgraph,\n    TfLiteEvalTensor *eval_tensors,\n    const int32_t *offline_planner_offsets\n)",
              "source": {
                "line": 294,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L294"
              },
              "summary": "Allocates persistent tensor buffers for variable tensors in the subgraph."
            },
            {
              "description": "Allocate and return a persistent `TfLiteTensor`. TODO(b/162311891): Drop this method when the interpreter has an API for accessing `TfLiteEvalTensor` structs.",
              "examples": [],
              "id": "tflite::MicroAllocator::AllocatePersistentTfLiteTensorInternal",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "AllocatePersistentTfLiteTensorInternal",
              "params": [],
              "raises": [],
              "returns": [],
              "signature": "virtual TfLiteTensor * tflite::MicroAllocator::AllocatePersistentTfLiteTensorInternal()",
              "source": {
                "line": 301,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L301"
              },
              "summary": "Allocate and return a persistent TfLiteTensor."
            },
            {
              "description": "Populates a `TfLiteTensor` struct with data from the model flatbuffer. Any quantization data is allocated from either the tail (persistent) or temp sections of the arena based on the allocation flag.",
              "examples": [],
              "id": "tflite::MicroAllocator::PopulateTfLiteTensorFromFlatbuffer",
              "kind": "method",
              "language": "cpp",
              "members": [],
              "name": "PopulateTfLiteTensorFromFlatbuffer",
              "params": [
                {
                  "description": "",
                  "name": "model",
                  "type": "const Model *"
                },
                {
                  "description": "",
                  "name": "tensor",
                  "type": "TfLiteTensor *"
                },
                {
                  "description": "",
                  "name": "tensor_index",
                  "type": "int"
                },
                {
                  "description": "",
                  "name": "subgraph_idx",
                  "type": "int"
                },
                {
                  "description": "",
                  "name": "allocate_temp",
                  "type": "bool"
                }
              ],
              "raises": [],
              "returns": [],
              "signature": "virtual TfLiteStatus tflite::MicroAllocator::PopulateTfLiteTensorFromFlatbuffer(\n    const Model *model,\n    TfLiteTensor *tensor,\n    int tensor_index,\n    int subgraph_idx,\n    bool allocate_temp\n)",
              "source": {
                "line": 306,
                "path": "tensorflow/lite/micro/micro_allocator.h",
                "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L306"
              },
              "summary": "Populates a TfLiteTensor struct with data from the model flatbuffer."
            }
          ],
          "name": "MicroAllocator",
          "params": [],
          "raises": [],
          "returns": [],
          "signature": "class MicroAllocator",
          "source": {
            "line": 128,
            "path": "tensorflow/lite/micro/micro_allocator.h",
            "url": "https://github.com/AmbiqAI/helia-rt/blob/70611e608778a432566e30965e8b4bc7ea75aa36/tensorflow/lite/micro/micro_allocator.h#L128"
          },
          "summary": "Allocator responsible for allocating memory for all intermediate tensors necessary to invoke a model."
        }
      ]
    }
  ],
  "name": "heliaRT"
}
