Halide 21.0.0
Halide compiler and libraries
Loading...
Searching...
No Matches
Halide::Internal::GeneratorInput_Buffer< T > Class Template Reference

#include <Generator.h>

Inheritance diagram for Halide::Internal::GeneratorInput_Buffer< T >:
Halide::Internal::GeneratorInputImpl< T, Func > Halide::Internal::GeneratorInputBase Halide::Internal::GIOBase

Public Member Functions

 GeneratorInput_Buffer (const std::string &name)
 GeneratorInput_Buffer (const std::string &name, const Type &t, int d)
 GeneratorInput_Buffer (const std::string &name, const Type &t)
 GeneratorInput_Buffer (const std::string &name, int d)
template<typename... Args>
Expr operator() (Args &&...args) const
Expr operator() (std::vector< Expr > args) const
template<typename T2>
 operator StubInputBuffer< T2 > () const
 operator Func () const
 operator ExternFuncArgument () const
GeneratorInput_Buffer< T > & set_estimate (Var var, Expr min, Expr extent)
GeneratorInput_Buffer< T > & set_estimates (const Region &estimates)
Func in ()
Func in (const Func &other)
Func in (const std::vector< Func > &others)
 operator ImageParam () const
template<typename T2 = T, typename std::enable_if< std::is_array< T2 >::value >::type * = nullptr>
size_t size () const
template<typename T2 = T, typename std::enable_if< std::is_array< T2 >::value >::type * = nullptr>
ImageParam operator[] (size_t i) const
template<typename T2 = T, typename std::enable_if< std::is_array< T2 >::value >::type * = nullptr>
ImageParam at (size_t i) const
template<typename T2 = T, typename std::enable_if< std::is_array< T2 >::value >::type * = nullptr>
std::vector< ImageParam >::const_iterator begin () const
template<typename T2 = T, typename std::enable_if< std::is_array< T2 >::value >::type * = nullptr>
std::vector< ImageParam >::const_iterator end () const
Public Member Functions inherited from Halide::Internal::GeneratorInputImpl< T, Func >
size_t size () const
const Funcoperator[] (size_t i) const
const Funcat (size_t i) const
std::vector< Func >::const_iterator begin () const
std::vector< Func >::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
GIOBaseoperator= (const GIOBase &)=delete
 GIOBase (GIOBase &&)=delete
GIOBaseoperator= (GIOBase &&)=delete

Protected Types

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

Protected Member Functions

std::string get_c_type () const override
template<typename T2>
T2 as () const
Protected Member Functions inherited from Halide::Internal::GeneratorInputImpl< T, Func >
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)
virtual void set_def_min_max ()
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

Additional Inherited Members

Protected Attributes inherited from Halide::Internal::GeneratorInputBase
std::vector< Parameterparameters_
bool inputs_set = false
Protected Attributes inherited from Halide::Internal::GIOBase
int array_size_
const std::string name_
const ArgInfoKind kind_
std::vector< Typetypes_
int dims_
std::vector< Funcfuncs_
std::vector< Exprexprs_
GeneratorBasegenerator {nullptr}

Detailed Description

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

Definition at line 1665 of file Generator.h.

Member Typedef Documentation

◆ TBase

template<typename T>
using Halide::Internal::GeneratorInput_Buffer< T >::TBase = typename Super::TBase
protected

Definition at line 1670 of file Generator.h.

Constructor & Destructor Documentation

◆ GeneratorInput_Buffer() [1/4]

template<typename T>
Halide::Internal::GeneratorInput_Buffer< T >::GeneratorInput_Buffer ( const std::string & name)
inlineexplicit

◆ GeneratorInput_Buffer() [2/4]

template<typename T>
Halide::Internal::GeneratorInput_Buffer< T >::GeneratorInput_Buffer ( const std::string & name,
const Type & t,
int d )
inline

◆ GeneratorInput_Buffer() [3/4]

template<typename T>
Halide::Internal::GeneratorInput_Buffer< T >::GeneratorInput_Buffer ( const std::string & name,
const Type & t )
inline

◆ GeneratorInput_Buffer() [4/4]

template<typename T>
Halide::Internal::GeneratorInput_Buffer< T >::GeneratorInput_Buffer ( const std::string & name,
int d )
inline

Member Function Documentation

◆ get_c_type()

template<typename T>
std::string Halide::Internal::GeneratorInput_Buffer< T >::get_c_type ( ) const
inlineoverrideprotectedvirtual

◆ as()

template<typename T>
template<typename T2>
T2 Halide::Internal::GeneratorInput_Buffer< T >::as ( ) const
inlineprotected

Definition at line 1686 of file Generator.h.

◆ operator()() [1/2]

template<typename T>
template<typename... Args>
Expr Halide::Internal::GeneratorInput_Buffer< T >::operator() ( Args &&... args) const
inline

Definition at line 1716 of file Generator.h.

References ::Halide::Func, and Halide::Internal::GIOBase::check_gio_access().

◆ operator()() [2/2]

template<typename T>
Expr Halide::Internal::GeneratorInput_Buffer< T >::operator() ( std::vector< Expr > args) const
inline

Definition at line 1721 of file Generator.h.

References ::Halide::Func, and Halide::Internal::GIOBase::check_gio_access().

◆ operator StubInputBuffer< T2 >()

◆ operator Func()

template<typename T>
Halide::Internal::GeneratorInput_Buffer< T >::operator Func ( ) const
inline

◆ operator ExternFuncArgument()

◆ set_estimate()

◆ set_estimates()

◆ in() [1/3]

template<typename T>
Func Halide::Internal::GeneratorInput_Buffer< T >::in ( )
inline

Definition at line 1754 of file Generator.h.

References ::Halide::Func, and Halide::Internal::GIOBase::check_gio_access().

◆ in() [2/3]

template<typename T>
Func Halide::Internal::GeneratorInput_Buffer< T >::in ( const Func & other)
inline

Definition at line 1759 of file Generator.h.

References ::Halide::Func, and Halide::Internal::GIOBase::check_gio_access().

◆ in() [3/3]

template<typename T>
Func Halide::Internal::GeneratorInput_Buffer< T >::in ( const std::vector< Func > & others)
inline

Definition at line 1764 of file Generator.h.

References ::Halide::Func, and Halide::Internal::GIOBase::check_gio_access().

◆ operator ImageParam()

◆ size()

template<typename T>
template<typename T2 = T, typename std::enable_if< std::is_array< T2 >::value >::type * = nullptr>
size_t Halide::Internal::GeneratorInput_Buffer< T >::size ( ) const
inline

◆ operator[]()

template<typename T>
template<typename T2 = T, typename std::enable_if< std::is_array< T2 >::value >::type * = nullptr>
ImageParam Halide::Internal::GeneratorInput_Buffer< T >::operator[] ( size_t i) const
inline

◆ at()

template<typename T>
template<typename T2 = T, typename std::enable_if< std::is_array< T2 >::value >::type * = nullptr>
ImageParam Halide::Internal::GeneratorInput_Buffer< T >::at ( size_t i) const
inline

◆ begin()

template<typename T>
template<typename T2 = T, typename std::enable_if< std::is_array< T2 >::value >::type * = nullptr>
std::vector< ImageParam >::const_iterator Halide::Internal::GeneratorInput_Buffer< T >::begin ( ) const
inline

Definition at line 1794 of file Generator.h.

References user_error.

◆ end()

template<typename T>
template<typename T2 = T, typename std::enable_if< std::is_array< T2 >::value >::type * = nullptr>
std::vector< ImageParam >::const_iterator Halide::Internal::GeneratorInput_Buffer< T >::end ( ) const
inline

Definition at line 1800 of file Generator.h.

References user_error.


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