Halide
Halide::Internal::Autoscheduler::LoadJacobian Class Reference

#include <FunctionDAG.h>

Public Member Functions

 LoadJacobian (vector< vector< OptionalRational >> &&matrix, int64_t c=1)
 
size_t producer_storage_dims () const
 
size_t consumer_loop_dims () const
 
OptionalRational operator() (int producer_storage_dim, int consumer_loop_dim) const
 
int64_t count () const
 
bool merge (const LoadJacobian &other)
 
LoadJacobian operator* (const LoadJacobian &other) const
 
void dump (std::ostream &os, const char *prefix) const
 
 LoadJacobian (size_t producer_storage_dims, size_t consumer_loop_dims, int64_t count)
 
bool all_coeffs_exist () const
 
bool empty () const
 
size_t producer_storage_dims () const
 
size_t consumer_loop_dims () const
 
bool is_constant () const
 
OptionalRational operator() (int producer_storage_dim, int consumer_loop_dim) const
 
OptionalRationaloperator() (int producer_storage_dim, int consumer_loop_dim)
 
int64_t count () const
 
bool merge (const LoadJacobian &other)
 
LoadJacobian operator* (const std::vector< int64_t > &factors) const
 
LoadJacobian operator* (const LoadJacobian &other) const
 
void dump (const char *prefix) const
 

Detailed Description

Definition at line 127 of file FunctionDAG.h.

Constructor & Destructor Documentation

◆ LoadJacobian() [1/2]

Halide::Internal::Autoscheduler::LoadJacobian::LoadJacobian ( vector< vector< OptionalRational >> &&  matrix,
int64_t  c = 1 
)
inline

Definition at line 132 of file FunctionDAG.h.

◆ LoadJacobian() [2/2]

Halide::Internal::Autoscheduler::LoadJacobian::LoadJacobian ( size_t  producer_storage_dims,
size_t  consumer_loop_dims,
int64_t  count 
)
inline

Definition at line 139 of file FunctionDAG.h.

Member Function Documentation

◆ producer_storage_dims() [1/2]

size_t Halide::Internal::Autoscheduler::LoadJacobian::producer_storage_dims ( ) const
inline

Definition at line 136 of file FunctionDAG.h.

Referenced by operator()(), and operator*().

◆ consumer_loop_dims() [1/2]

size_t Halide::Internal::Autoscheduler::LoadJacobian::consumer_loop_dims ( ) const
inline

Definition at line 140 of file FunctionDAG.h.

Referenced by operator()(), and operator*().

◆ operator()() [1/3]

OptionalRational Halide::Internal::Autoscheduler::LoadJacobian::operator() ( int  producer_storage_dim,
int  consumer_loop_dim 
) const
inline

Definition at line 149 of file FunctionDAG.h.

References internal_assert.

◆ count() [1/2]

int64_t Halide::Internal::Autoscheduler::LoadJacobian::count ( ) const
inline

Definition at line 167 of file FunctionDAG.h.

Referenced by merge(), and operator*().

◆ merge() [1/2]

bool Halide::Internal::Autoscheduler::LoadJacobian::merge ( const LoadJacobian other)
inline

Definition at line 173 of file FunctionDAG.h.

References count().

◆ operator*() [1/3]

LoadJacobian Halide::Internal::Autoscheduler::LoadJacobian::operator* ( const LoadJacobian other) const
inline

Definition at line 193 of file FunctionDAG.h.

References consumer_loop_dims(), count(), internal_assert, and producer_storage_dims().

◆ dump() [1/2]

void Halide::Internal::Autoscheduler::LoadJacobian::dump ( std::ostream &  os,
const char *  prefix 
) const

◆ all_coeffs_exist()

bool Halide::Internal::Autoscheduler::LoadJacobian::all_coeffs_exist ( ) const
inline

Definition at line 144 of file FunctionDAG.h.

◆ empty()

bool Halide::Internal::Autoscheduler::LoadJacobian::empty ( ) const
inline

Definition at line 153 of file FunctionDAG.h.

◆ producer_storage_dims() [2/2]

size_t Halide::Internal::Autoscheduler::LoadJacobian::producer_storage_dims ( ) const
inline

Definition at line 157 of file FunctionDAG.h.

◆ consumer_loop_dims() [2/2]

size_t Halide::Internal::Autoscheduler::LoadJacobian::consumer_loop_dims ( ) const
inline

Definition at line 161 of file FunctionDAG.h.

◆ is_constant()

bool Halide::Internal::Autoscheduler::LoadJacobian::is_constant ( ) const
inline

Definition at line 165 of file FunctionDAG.h.

◆ operator()() [2/3]

OptionalRational Halide::Internal::Autoscheduler::LoadJacobian::operator() ( int  producer_storage_dim,
int  consumer_loop_dim 
) const
inline

Definition at line 175 of file FunctionDAG.h.

References consumer_loop_dims(), and producer_storage_dims().

◆ operator()() [3/3]

OptionalRational& Halide::Internal::Autoscheduler::LoadJacobian::operator() ( int  producer_storage_dim,
int  consumer_loop_dim 
)
inline

Definition at line 183 of file FunctionDAG.h.

◆ count() [2/2]

int64_t Halide::Internal::Autoscheduler::LoadJacobian::count ( ) const
inline

Definition at line 190 of file FunctionDAG.h.

◆ merge() [2/2]

bool Halide::Internal::Autoscheduler::LoadJacobian::merge ( const LoadJacobian other)
inline

Definition at line 196 of file FunctionDAG.h.

◆ operator*() [2/3]

LoadJacobian Halide::Internal::Autoscheduler::LoadJacobian::operator* ( const std::vector< int64_t > &  factors) const
inline

Definition at line 210 of file FunctionDAG.h.

References consumer_loop_dims(), and producer_storage_dims().

◆ operator*() [3/3]

LoadJacobian Halide::Internal::Autoscheduler::LoadJacobian::operator* ( const LoadJacobian other) const
inline

Definition at line 222 of file FunctionDAG.h.

References consumer_loop_dims(), count(), and producer_storage_dims().

◆ dump() [2/2]

void Halide::Internal::Autoscheduler::LoadJacobian::dump ( const char *  prefix) const

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