Halide 18.0.0
Halide compiler and libraries
|
A class to represent ranges of Exprs. More...
#include <Interval.h>
Public Member Functions | |
Interval () | |
A default-constructed Interval is everything. | |
Interval (const Expr &min, const Expr &max) | |
Construct an interval from a lower and upper bound. | |
bool | is_empty () const |
Is the interval the empty set. | |
bool | is_everything () const |
Is the interval the entire range. | |
bool | is_single_point () const |
Is the interval just a single value (min == max) | |
bool | is_single_point (const Expr &e) const |
Is the interval a particular single value. | |
bool | has_upper_bound () const |
Does the interval have a finite least upper bound. | |
bool | has_lower_bound () const |
Does the interval have a finite greatest lower bound. | |
bool | is_bounded () const |
Does the interval have a finite upper and lower bound. | |
bool | same_as (const Interval &other) const |
Is the interval the same as another interval. | |
void | include (const Interval &i) |
Expand the interval to include another Interval. | |
void | include (const Expr &e) |
Expand the interval to include an Expr. | |
bool | operator== (const Interval &other) const |
Equivalent to same_as. | |
Static Public Member Functions | |
static Expr | pos_inf () |
Exprs to represent positive and negative infinity. | |
static Expr | neg_inf () |
static Interval | everything () |
The interval representing everything. | |
static Interval | nothing () |
The interval representing nothing. | |
static Interval | single_point (const Expr &e) |
Construct an interval representing a single point. | |
static Interval | make_union (const Interval &a, const Interval &b) |
Construct the smallest interval containing two intervals. | |
static Interval | make_intersection (const Interval &a, const Interval &b) |
Construct the largest interval contained within two other intervals. | |
static Expr | make_max (const Expr &a, const Expr &b) |
An eagerly-simplifying max of two Exprs that respects infinities. | |
static Expr | make_min (const Expr &a, const Expr &b) |
An eagerly-simplifying min of two Exprs that respects infinities. | |
Public Attributes | |
Expr | min |
The lower and upper bound of the interval. | |
Expr | max |
A class to represent ranges of Exprs.
Can be unbounded above or below.
Definition at line 14 of file Interval.h.
|
inline |
A default-constructed Interval is everything.
Definition at line 38 of file Interval.h.
Construct an interval from a lower and upper bound.
Definition at line 43 of file Interval.h.
References Halide::Internal::IntrusivePtr< T >::defined(), internal_assert, max, and min.
Exprs to represent positive and negative infinity.
Definition at line 25 of file Interval.h.
Definition at line 28 of file Interval.h.
The interval representing everything.
Construct an interval representing a single point.
bool Halide::Internal::Interval::is_empty | ( | ) | const |
Is the interval the empty set.
bool Halide::Internal::Interval::is_everything | ( | ) | const |
Is the interval the entire range.
bool Halide::Internal::Interval::is_single_point | ( | ) | const |
Is the interval just a single value (min == max)
Is the interval a particular single value.
bool Halide::Internal::Interval::has_upper_bound | ( | ) | const |
Does the interval have a finite least upper bound.
bool Halide::Internal::Interval::has_lower_bound | ( | ) | const |
Does the interval have a finite greatest lower bound.
bool Halide::Internal::Interval::is_bounded | ( | ) | const |
Does the interval have a finite upper and lower bound.
Is the interval the same as another interval.
Expand the interval to include another Interval.
|
static |
Construct the smallest interval containing two intervals.
|
static |
Construct the largest interval contained within two other intervals.
An eagerly-simplifying max of two Exprs that respects infinities.
An eagerly-simplifying min of two Exprs that respects infinities.
Equivalent to same_as.
Exists so that the autoscheduler can compare two map<string, Interval> for equality in order to cache computations.
Expr Halide::Internal::Interval::min |
The lower and upper bound of the interval.
They are included in the interval.
Definition at line 35 of file Interval.h.
Referenced by Interval().
Expr Halide::Internal::Interval::max |
Definition at line 35 of file Interval.h.
Referenced by Interval().