Grok  7.6.6
Public Member Functions | List of all members
grk::PartialInterleaver< T, FILTER_WIDTH, VERT_PASS_WIDTH > Class Template Reference
Inheritance diagram for grk::PartialInterleaver< T, FILTER_WIDTH, VERT_PASS_WIDTH >:
grk::Partial53< T, FILTER_WIDTH, VERT_PASS_WIDTH > grk::Partial97< T, FILTER_WIDTH, VERT_PASS_WIDTH >

Public Member Functions

void interleave_h (dwt_data< T > *dwt, ISparseBuffer *sa, uint32_t y_offset, uint32_t height)
 interleaved data is laid out in the dwt->mem buffer in increments of h_chunk More...
 
void interleave_v (dwt_data< T > *GRK_RESTRICT dwt, ISparseBuffer *sa, uint32_t x_offset, uint32_t x_num_elements)
 

Detailed Description

template<typename T, uint32_t FILTER_WIDTH, uint32_t VERT_PASS_WIDTH>
class grk::PartialInterleaver< T, FILTER_WIDTH, VERT_PASS_WIDTH >


5/3 operates on elements of type int32_t while 9/7 operates on elements of type vec4f

Horizontal pass

Each thread processes a strip running the length of the window, with height 5/3 Height : sizeof(T)/sizeof(int32_t)

9/7 Height : sizeof(T)/sizeof(int32_t)

Vertical pass

Each thread processes a strip running the height of the window, with width

5/3 Width : 4

9/7 Width : 4

Member Function Documentation

◆ interleave_h()

template<typename T , uint32_t FILTER_WIDTH, uint32_t VERT_PASS_WIDTH>
void grk::PartialInterleaver< T, FILTER_WIDTH, VERT_PASS_WIDTH >::interleave_h ( dwt_data< T > *  dwt,
ISparseBuffer sa,
uint32_t  y_offset,
uint32_t  height 
)
inline

◆ interleave_v()

template<typename T , uint32_t FILTER_WIDTH, uint32_t VERT_PASS_WIDTH>
void grk::PartialInterleaver< T, FILTER_WIDTH, VERT_PASS_WIDTH >::interleave_v ( dwt_data< T > *GRK_RESTRICT  dwt,
ISparseBuffer sa,
uint32_t  x_offset,
uint32_t  x_num_elements 
)
inline

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