Halide 19.0.0
Halide compiler and libraries
|
A Realization is a vector of references to existing Buffer objects. More...
#include <Realization.h>
Public Member Functions | |
size_t | size () const |
The number of images in the Realization. | |
const Buffer< void > & | operator[] (size_t x) const |
Get a const reference to one of the images. | |
Buffer< void > & | operator[] (size_t x) |
Get a reference to one of the images. | |
template<typename T , int Dims> | |
operator Buffer< T, Dims > () const | |
Single-element realizations are implicitly castable to Buffers. | |
Realization (const Buffer< void > &e) | |
Construct a Realization that acts as a reference to a single existing Buffer. | |
Realization (Buffer< void > &&e) | |
Realization (const std::vector< Buffer< void > > &e) | |
Construct a Realization that refers to the buffers in an existing vector of Buffer<>. | |
Realization (std::vector< Buffer< void > > &&e) | |
Realization (std::initializer_list< Buffer< void > > e) | |
int | device_sync (void *ctx=nullptr) |
Call device_sync() for all Buffers in the Realization. | |
A Realization is a vector of references to existing Buffer objects.
A pipeline with multiple outputs realize to a Realization.
Definition at line 19 of file Realization.h.
|
explicit |
Construct a Realization that acts as a reference to a single existing Buffer.
The element type of the Buffer may not be const.
|
explicit |
|
explicit |
Construct a Realization that refers to the buffers in an existing vector of Buffer<>.
The element type of the Buffer(s) may not be const
|
explicit |
|
inlineexplicit |
Definition at line 57 of file Realization.h.
size_t Halide::Realization::size | ( | ) | const |
The number of images in the Realization.
Referenced by Halide::Pipeline::RealizationArg::size().
Get a const reference to one of the images.
|
inline |
Single-element realizations are implicitly castable to Buffers.
Definition at line 35 of file Realization.h.
References user_assert.
int Halide::Realization::device_sync | ( | void * | ctx = nullptr | ) |
Call device_sync() for all Buffers in the Realization.
If one of the calls returns an error, subsequent Buffers won't have device_sync called; thus callers should consider a nonzero return code to mean that potentially all of the Buffers are in an indeterminate state of sync. Calling this explicitly should rarely be necessary, except for profiling.