---
title: "ClikaRT::TracingScope"
sidebar_label: "TracingScope"
description: "While alive, the calling thread builds a LAZY graph: ops return Unscheduled placeholder tensors carrying lineage, and NO kernel runs. Call Tensor::synchronize() to materialize the graph in one pass."
---

<!-- Generated by tools/doxygen2mdx from Doxygen XML. Do not edit. -->

<span class="api-kind api-kind--class">class</span>

**Header:** `ClikaRT/compute/scope.h`

While alive, the calling thread builds a LAZY graph: ops return `Unscheduled` placeholder tensors carrying lineage, and NO kernel runs. Call [`Tensor::synchronize()`](./Tensor.md#synchronize) to materialize the graph in one pass. Outside the scope execution is eager (the default). Non-copyable, non-movable.

## Member functions

### TracingScope() {#TracingScope}

<div class="api-signature">

**`TracingScope`**()

</div>

Enter: this thread records ops symbolically (no kernels run) until exit.

<div class="api-declared">

Declared in `ClikaRT/compute/scope.h`, line 71

</div>

### \~TracingScope() {#TracingScope-2}

<div class="api-signature">

**`~TracingScope`**()

</div>

Exit: restores eager execution on this thread.

<div class="api-declared">

Declared in `ClikaRT/compute/scope.h`, line 73

</div>

### TracingScope(TracingScope) {#TracingScope-3}

<div class="api-signature">

**`TracingScope`**(`const TracingScope&`) `=delete`

</div>

<div class="api-declared">

Declared in `ClikaRT/compute/scope.h`, line 74

</div>

### operator=() {#operator-assign}

<div class="api-signature">

[`TracingScope`](./TracingScope.md)`&` **`operator=`**(`const` [`TracingScope`](./TracingScope.md)`&`) `=delete`

</div>

<div class="api-declared">

Declared in `ClikaRT/compute/scope.h`, line 75

</div>
