---
title: "ClikaRT::nn::Clamp"
sidebar_label: "Clamp"
description: "Clamps every element of input into [min_val, max_val]; an unset bound leaves that side open."
---

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

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

**Header:** `ClikaRT/nn/generated/elementwise.h`  
**Inherits:** [`ClikaRT::nn::Module`](./Module.md)

Clamps every element of `input` into \[min\_val, max\_val\]; an unset bound leaves that side open. The module form of [`ClikaRT::ops::clamp`](../ops/clamp.md#clamp), which documents the full contract (shapes, dtypes, errors); construct once, then call it like a function.

## Member functions

### Clamp(ClampOptions) {#Clamp}

<div class="api-signature">

`explicit` **`Clamp`**([`ClampOptions`](./ClampOptions.md) `options` `=` `{}`)

</div>

Constructs the module from [`options`](./Clamp.md#options) (every default when omitted).

<div class="api-declared">

Declared in `ClikaRT/nn/generated/elementwise.h`, line 427

</div>

### Clamp(optional\<ScalarOrTensor\>, optional\<ScalarOrTensor\>) {#Clamp-2}

<div class="api-signature">

`explicit` **`Clamp`**(`std::optional<`[`ScalarOrTensor`](../ScalarOrTensor.md)`>` `min_val`, `std::optional<`[`ScalarOrTensor`](../ScalarOrTensor.md)`>` `max_val` `=` `std::nullopt`)

</div>

`Clamp(min_val, max_val)`: the positional form of `ClampOptions(min_val, max_val)`.

<div class="api-declared">

Declared in `ClikaRT/nn/generated/elementwise.h`, line 430

</div>

### forward() {#forward}

<div class="api-signature">

[`Tensor`](../Tensor.md) **`forward`**([`Tensor`](../Tensor.md) `input`) `const`

</div>

[`forward_impl`](./Clamp.md#forward), unwrapped: raises [`ClikaRT::Error`](../Error.md) on failure.

<div class="api-declared">

Declared in `ClikaRT/nn/generated/elementwise.h`, line 443

</div>

### operator()() {#operator-call}

<div class="api-signature">

[`Tensor`](../Tensor.md) **`operator()`**([`Tensor`](../Tensor.md) `input`) `const`

</div>

Same as [`forward`](./Clamp.md#forward).

<div class="api-declared">

Declared in `ClikaRT/nn/generated/elementwise.h`, line 447

</div>

### options() {#options}

<div class="api-signature">

`const` [`ClampOptions`](./ClampOptions.md)`&` **`options`**() `const`

</div>

The settings this module was constructed with.

<div class="api-declared">

Declared in `ClikaRT/nn/generated/elementwise.h`, line 451

</div>
