# tensorflow::Input

`#include <ops.h>`

Represents a tensor value that can be used as an operand to an [Operation](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation).

## Summary

| ### Constructors and Destructors ||
|---|---|
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input_1a0e79ff39192f9c6b9e075f5d03506631(const https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output & o)` All of [Input](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)'s constructors are implicit. ||
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input_1a8c93ccd3e37a114d1435d2277fb06c92(const T & v)` ||
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input_1a4b3e58f8d74193c929c5c3c786d639c9(const https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/input/initializer#structtensorflow_1_1_input_1_1_initializer & init)` ||
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input_1a20e29b76fe988c0a318157ff91bcf010(const https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor & t)` ||
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input_1ab08681c0de994b089b85320fca7ff787(const std::initializer_list< https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/input/initializer#structtensorflow_1_1_input_1_1_initializer > & init)` ||
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input_1a535accffa48651a346c49e409eaf1e56(const string & name, int32 i, DataType dt)` Constructor specifying a node name, index and datatype. ||

| ### Public functions ||
|---|---|
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input_1a394b81fd7422c67e7801eed913fa4be5() const ` | `DataType` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input_1ae9d029fada720f968ce3994b32eca24c() const ` | `int32` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input_1ad10211f35c7502472ad4cc9e91655478() const ` | `Node *` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input_1a06b61a080b93dc8d3215fba7c777e335() const ` | `string` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input_1a3ab4cedd88106271069438efb2407ec6() const ` | `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/status#classtensorflow_1_1_status` |
| `https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input_1a7d7fddae545687445f4ac49dd1d62275() const ` | `const https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor &` |

| ### Structs ||
|---|---|
| [tensorflow::Input::Initializer](https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/input/initializer) | [Initializer](https://www.tensorflow.org/versions/r2.0/api_docs/cc/struct/tensorflow/input/initializer#structtensorflow_1_1_input_1_1_initializer) enables constructing an [Input](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input) object from various kinds of C++ constants such as simple primitive constants and nested initializer lists representing a multi-dimensional array. |

## Public functions

### Input

```
 Input(
  const Output & o
)
```
All of [Input](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input)'s constructors are implicit.

[Input](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input) can be implicitly constructed from the following objects :

- [Output](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output): This is so that the output of an [Operation](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation) can be directly used as the input to a op wrapper, which takes Inputs.
- A scalar, or a multi-dimensional tensor specified as a recursive initializer list. This enables directly passing constants as inputs to op wrappers.
- A [Tensor](https://www.tensorflow.org/versions/r2.0/api_docs/cc/class/tensorflow/tensor#classtensorflow_1_1_tensor) object.

<br />

### Input

```
 Input(
  const T & v
)
```

### Input

```
 Input(
  const Initializer & init
)
```

### Input

```
 Input(
  const Tensor & t
)
```

### Input

```
 Input(
  const std::initializer_list< Initializer > & init
)
```

### Input

```
 Input(
  const string & name,
  int32 i,
  DataType dt
)
```
Constructor specifying a node name, index and datatype.

This should only be used for specifying a backward edge, needed by control flow.

### data_type

```
DataType data_type() const 
```

### index

```
int32 index() const 
```

### node

```
Node * node() const 
```

### node_name

```
string node_name() const 
```

### status

```
Status status() const 
```

### tensor

```
const Tensor & tensor() const 
```