Loading...
Searching...
No Matches
Halide::Internal::Realize Struct Reference

Allocate a multi-dimensional buffer of the given type and size. More...

`#include <IR.h>`

Inheritance diagram for Halide::Internal::Realize:

## Static Public Member Functions

static Stmt | make (const std::string &name, const std::vector< Type > &types, MemoryType memory_type, const Region &bounds, Expr condition, Stmt body)

## Public Attributes

std::string | name
std::vector< Type > | types
MemoryType | memory_type
Region | bounds
Expr | condition
Stmt | body
Public Attributes inherited from Halide::Internal::IRNode
RefCount | ref_count
| These classes are all managed with intrusive reference counting, so we also track a reference count.
IRNodeType | node_type
| Each IR node subclass has a unique identifier.

## Static Public Attributes

static const IRNodeType | _node_type = IRNodeType::Realize

## Additional Inherited Members

Public Member Functions inherited from Halide::Internal::StmtNode< Realize >
void | accept (IRVisitor *v) const override
| We use the visitor pattern to traverse IR nodes throughout the compiler, so we have a virtual accept method which accepts visitors.
Stmt | mutate_stmt (IRMutator *v) const override
| StmtNode ()
| ~StmtNode () override=default
Public Member Functions inherited from Halide::Internal::BaseStmtNode
| BaseStmtNode (IRNodeType t)
Public Member Functions inherited from Halide::Internal::IRNode
| IRNode (IRNodeType t)
virtual | ~IRNode ()=default

## Detailed Description

Allocate a multi-dimensional buffer of the given type and size.

Create some scratch memory that will back the function 'name' over the range specified in 'bounds'. The bounds are a vector of (min, extent) pairs for each dimension. Allocation only occurs if the condition evaluates to true.

Definition at line 427 of file IR.h.

## Member Function Documentation

## make()

Stmt Halide::Internal::Realize::make | ( | const std::string & | name,
|  | const std::vector< Type > & | types,
|  | MemoryType | memory_type,
|  | const Region & | bounds,
|  | Expr | condition,
|  | Stmt | body )

static

References body, bounds, condition, memory_type, name, and types.

## Member Data Documentation

## name

std::string Halide::Internal::Realize::name

Definition at line 428 of file IR.h.

Referenced by make().

## types

std::vector<Type> Halide::Internal::Realize::types

Definition at line 429 of file IR.h.

Referenced by make().

## memory_type

MemoryType Halide::Internal::Realize::memory_type

Definition at line 430 of file IR.h.

Referenced by make().

## bounds

Region Halide::Internal::Realize::bounds

Definition at line 431 of file IR.h.

Referenced by make().

## condition

Expr Halide::Internal::Realize::condition

Definition at line 432 of file IR.h.

Referenced by make().

## body

Stmt Halide::Internal::Realize::body

Definition at line 433 of file IR.h.

Referenced by make().

## _node_type

const IRNodeType Halide::Internal::Realize::_node_type = IRNodeType::Realize

static

Definition at line 437 of file IR.h.

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

- src/IR.h