Loading...
Searching...
No Matches
Halide::Internal::GeneratorInput_Arithmetic< T > Class Template Reference

`#include <Generator.h>`

Inheritance diagram for Halide::Internal::GeneratorInput_Arithmetic< T >:

## Public Member Functions

| GeneratorInput_Arithmetic (const std::string &name)
| GeneratorInput_Arithmetic (const std::string &name, const TBase &def)
| GeneratorInput_Arithmetic (size_t array_size, const std::string &name)
| GeneratorInput_Arithmetic (size_t array_size, const std::string &name, const TBase &def)
| GeneratorInput_Arithmetic (const std::string &name, const TBase &def, const TBase &min, const TBase &max)
| GeneratorInput_Arithmetic (size_t array_size, const std::string &name, const TBase &def, const TBase &min, const TBase &max)
Public Member Functions inherited from Halide::Internal::GeneratorInput_Scalar< T >
| GeneratorInput_Scalar (const std::string &name)
| GeneratorInput_Scalar (const std::string &name, const TBase &def)
| GeneratorInput_Scalar (size_t array_size, const std::string &name)
| GeneratorInput_Scalar (size_t array_size, const std::string &name, const TBase &def)
| operator Expr () const
| You can use this Input as an expression in a halide function definition.
| operator ExternFuncArgument () const
| Using an Input as the argument to an external stage treats it as an Expr.
template<typename T2 = T, typename std::enable_if< std::is_pointer< T2 >::value >::type * = nullptr>
void | set_estimate (const TBase &value)
template<typename T2 = T, typename std::enable_if<!std::is_array< T2 >::value &&!std::is_pointer< T2 >::value >::type * = nullptr>
void | set_estimate (const TBase &value)
template<typename T2 = T, typename std::enable_if< std::is_array< T2 >::value >::type * = nullptr>
void | set_estimate (size_t index, const TBase &value)
Type | type () const
Public Member Functions inherited from Halide::Internal::GeneratorInputImpl< T, Expr >
size_t | size () const
const Expr & | operator[] (size_t i) const
const Expr & | at (size_t i) const
std::vector< Expr >::const_iterator | begin () const
std::vector< Expr >::const_iterator | end () const
Public Member Functions inherited from Halide::Internal::GeneratorInputBase
| ~GeneratorInputBase () override
Public Member Functions inherited from Halide::Internal::GIOBase
virtual | ~GIOBase ()=default
void | set_type (const Type &type)
void | set_dimensions (int dims)
void | set_array_size (int size)
| GIOBase (const GIOBase &)=delete
GIOBase & | operator= (const GIOBase &)=delete
| GIOBase (GIOBase &&)=delete
GIOBase & | operator= (GIOBase &&)=delete

## Protected Types

using | TBase = typename Super::TBase
Protected Types inherited from Halide::Internal::GeneratorInput_Scalar< T >
using | TBase = typename Super::TBase
Protected Types inherited from Halide::Internal::GeneratorInputImpl< T, Expr >
using | TBase

## Protected Member Functions

void | set_def_min_max () override
Protected Member Functions inherited from Halide::Internal::GeneratorInput_Scalar< T >
void | set_def_min_max () override
std::string | get_c_type () const override
Protected Member Functions inherited from Halide::Internal::GeneratorInputImpl< T, Expr >
bool | is_array () const override
| GeneratorInputImpl (const std::string &name, ArgInfoKind kind, const std::vector< Type > &t, int d)
| GeneratorInputImpl (const std::string &name, ArgInfoKind kind, const std::vector< Type > &t, int d)
| GeneratorInputImpl (const std::string &name, ArgInfoKind kind, const std::vector< Type > &t, int d)
Protected Member Functions inherited from Halide::Internal::GeneratorInputBase
| GeneratorInputBase (size_t array_size, const std::string &name, ArgInfoKind kind, const std::vector< Type > &t, int d)
| GeneratorInputBase (const std::string &name, ArgInfoKind kind, const std::vector< Type > &t, int d)
Parameter | parameter () const
void | init_internals ()
void | set_inputs (const std::vector< StubInput > &inputs)
void | verify_internals () override
void | check_value_writable () const override
const char * | input_or_output () const override
void | set_estimate_impl (const Var &var, const Expr &min, const Expr &extent)
void | set_estimates_impl (const Region &estimates)
Protected Member Functions inherited from Halide::Internal::GIOBase
bool | array_size_defined () const
size_t | array_size () const
const std::string & | name () const
ArgInfoKind | kind () const
bool | gio_types_defined () const
const std::vector< Type > & | gio_types () const
Type | gio_type () const
bool | dims_defined () const
int | dims () const
const std::vector< Func > & | funcs () const
const std::vector< Expr > & | exprs () const
| GIOBase (size_t array_size, const std::string &name, ArgInfoKind kind, const std::vector< Type > &types, int dims)
std::string | array_name (size_t i) const
void | check_matching_array_size (size_t size) const
void | check_matching_types (const std::vector< Type > &t) const
void | check_matching_dims (int d) const
template<typename ElemType>
const std::vector< ElemType > & | get_values () const
void | check_gio_access () const
template<>
const std::vector< Expr > & | get_values () const
template<>
const std::vector< Func > & | get_values () const

## Protected Attributes

const Expr | min_
const Expr | max_
Protected Attributes inherited from Halide::Internal::GeneratorInput_Scalar< T >
const TBase | def_ {TBase()}
const Expr | def_expr_
Protected Attributes inherited from Halide::Internal::GeneratorInputBase
std::vector< Parameter > | parameters_
bool | inputs_set = false
Protected Attributes inherited from Halide::Internal::GIOBase
int | array_size_
const std::string | name_
const ArgInfoKind | kind_
std::vector< Type > | types_
int | dims_
std::vector< Func > | funcs_
std::vector< Expr > | exprs_
GeneratorBase * | generator {nullptr}

## Additional Inherited Members

Static Protected Member Functions inherited from Halide::Internal::GeneratorInput_Scalar< T >
template<typename TBase2 = TBase, typename std::enable_if<!std::is_pointer< TBase2 >::value >::type * = nullptr>
static Expr | TBaseToExpr (const TBase2 &value)
template<typename TBase2 = TBase, typename std::enable_if< std::is_pointer< TBase2 >::value >::type * = nullptr>
static Expr | TBaseToExpr (const TBase2 &value)

## Detailed Description

template<typename T>
class Halide::Internal::GeneratorInput_Arithmetic< T >

Definition at line 2102 of file Generator.h.

## Member Typedef Documentation

## TBase

template<typename T>

using Halide::Internal::GeneratorInput_Arithmetic< T >::TBase = typename Super::TBase

protected

Definition at line 2107 of file Generator.h.

## Constructor & Destructor Documentation

## GeneratorInput_Arithmetic() [1/6]

template<typename T>

Halide::Internal::GeneratorInput_Arithmetic< T >::GeneratorInput_Arithmetic | ( | const std::string & | name | ) |

inline explicit

Definition at line 2127 of file Generator.h.

References max_, min_, and Halide::Internal::GIOBase::name().

## GeneratorInput_Arithmetic() [2/6]

template<typename T>

Halide::Internal::GeneratorInput_Arithmetic< T >::GeneratorInput_Arithmetic | ( | const std::string & | name,
|  | const TBase & | def )

inline

Definition at line 2131 of file Generator.h.

References max_, min_, and Halide::Internal::GIOBase::name().

## GeneratorInput_Arithmetic() [3/6]

template<typename T>

Halide::Internal::GeneratorInput_Arithmetic< T >::GeneratorInput_Arithmetic | ( | size_t | array_size,
|  | const std::string & | name )

inline

Definition at line 2136 of file Generator.h.

References Halide::Internal::GIOBase::array_size(), max_, min_, and Halide::Internal::GIOBase::name().

## GeneratorInput_Arithmetic() [4/6]

template<typename T>

Halide::Internal::GeneratorInput_Arithmetic< T >::GeneratorInput_Arithmetic | ( | size_t | array_size,
|  | const std::string & | name,
|  | const TBase & | def )

inline

Definition at line 2141 of file Generator.h.

References Halide::Internal::GIOBase::array_size(), max_, min_, and Halide::Internal::GIOBase::name().

## GeneratorInput_Arithmetic() [5/6]

template<typename T>

Halide::Internal::GeneratorInput_Arithmetic< T >::GeneratorInput_Arithmetic | ( | const std::string & | name,
|  | const TBase & | def,
|  | const TBase & | min,
|  | const TBase & | max )

inline

Definition at line 2147 of file Generator.h.

References Halide::Internal::max(), max_, Halide::Internal::min(), min_, and Halide::Internal::GIOBase::name().

## GeneratorInput_Arithmetic() [6/6]

template<typename T>

Halide::Internal::GeneratorInput_Arithmetic< T >::GeneratorInput_Arithmetic | ( | size_t | array_size,
|  | const std::string & | name,
|  | const TBase & | def,
|  | const TBase & | min,
|  | const TBase & | max )

inline

Definition at line 2154 of file Generator.h.

References Halide::Internal::GIOBase::array_size(), Halide::Internal::max(), max_, Halide::Internal::min(), min_, and Halide::Internal::GIOBase::name().

## Member Function Documentation

## set_def_min_max()

template<typename T>

void Halide::Internal::GeneratorInput_Arithmetic< T >::set_def_min_max | ( |  | ) |

inline override protected virtual

Reimplemented from Halide::Internal::GeneratorInputBase.

Definition at line 2111 of file Generator.h.

References max_, min_, Halide::Internal::GeneratorInputBase::parameters_, Halide::Internal::GeneratorInput_Scalar< T >::set_def_min_max(), Halide::Parameter::set_max_value(), and Halide::Parameter::set_min_value().

## Member Data Documentation

## min_

template<typename T>

const Expr Halide::Internal::GeneratorInput_Arithmetic< T >::min_

protected

Definition at line 2109 of file Generator.h.

Referenced by GeneratorInput_Arithmetic(), GeneratorInput_Arithmetic(), GeneratorInput_Arithmetic(), GeneratorInput_Arithmetic(), GeneratorInput_Arithmetic(), GeneratorInput_Arithmetic(), and set_def_min_max().

## max_

template<typename T>

const Expr Halide::Internal::GeneratorInput_Arithmetic< T >::max_

protected

Definition at line 2109 of file Generator.h.

Referenced by GeneratorInput_Arithmetic(), GeneratorInput_Arithmetic(), GeneratorInput_Arithmetic(), GeneratorInput_Arithmetic(), GeneratorInput_Arithmetic(), GeneratorInput_Arithmetic(), and set_def_min_max().

The documentation for this class was generated from the following file:

- src/Generator.h