Grok  7.6.0
Public Member Functions | Private Member Functions | Private Attributes
grk::TileComponentBuffer< T > Struct Template Reference

#include <TileComponentBuffer.h>

Public Member Functions

 TileComponentBuffer (grk_image *output_image, uint32_t dx, uint32_t dy, grk_rect unreduced_dim, grk_rect reduced_dim, uint32_t reduced_num_resolutions, uint32_t numresolutions, grk_resolution *tile_comp_resolutions, bool whole_tile)
 
 ~TileComponentBuffer ()
 
T * cblk_ptr (uint32_t resno, uint32_t bandno, uint32_t &offsetx, uint32_t &offsety) const
 Get pointer to code block region in tile buffer. More...
 
T * ptr (uint32_t resno, uint32_t bandno) const
 Get pointer to band buffer. More...
 
T * ptr (uint32_t resno) const
 Get pointer to resolution buffer. More...
 
T * ptr (void) const
 Get pointer to tile buffer. More...
 
uint32_t stride (uint32_t resno, uint32_t bandno) const
 Get stride of band buffer. More...
 
uint32_t stride (uint32_t resno) const
 
uint32_t stride (void) const
 
bool alloc ()
 
void get_region_band_coordinates (uint32_t resno, uint32_t bandno, uint32_t *tbx0, uint32_t *tby0, uint32_t *tbx1, uint32_t *tby1) const
 Get reduced coordinates of sub-band region. More...
 
grk_rect bounds () const
 Get bounds of tile component decode: reduced tile component coordinates of region encode: unreduced tile component coordinates of entire tile. More...
 
grk_rect unreduced_bounds () const
 
uint64_t strided_area (void)
 
void attach (T *buffer, uint32_t stride)
 
void acquire (T *buffer, uint32_t stride)
 
void transfer (T **buffer, bool *owns, uint32_t *stride)
 

Private Member Functions

bool use_band_buffers () const
 
grk_buffer_2d< T > * band_buf (uint32_t resno, uint32_t bandno) const
 
grk_buffer_2d< T > * tile_buf () const
 

Private Attributes

grk_rect m_unreduced_bounds
 
grk_rect m_bounds
 
std::vector< grk_resolution * > resolutions
 
std::vector< res_buf< T > * > res_buffers
 
uint32_t num_resolutions
 
bool m_encode
 
bool whole_tile_decoding
 

Constructor & Destructor Documentation

◆ TileComponentBuffer()

template<typename T >
grk::TileComponentBuffer< T >::TileComponentBuffer ( grk_image output_image,
uint32_t  dx,
uint32_t  dy,
grk_rect  unreduced_dim,
grk_rect  reduced_dim,
uint32_t  reduced_num_resolutions,
uint32_t  numresolutions,
grk_resolution tile_comp_resolutions,
bool  whole_tile 
)
inline

◆ ~TileComponentBuffer()

template<typename T >
grk::TileComponentBuffer< T >::~TileComponentBuffer ( )
inline

Member Function Documentation

◆ acquire()

template<typename T >
void grk::TileComponentBuffer< T >::acquire ( T *  buffer,
uint32_t  stride 
)
inline

◆ alloc()

template<typename T >
bool grk::TileComponentBuffer< T >::alloc ( )
inline

◆ attach()

template<typename T >
void grk::TileComponentBuffer< T >::attach ( T *  buffer,
uint32_t  stride 
)
inline

◆ band_buf()

template<typename T >
grk_buffer_2d<T>* grk::TileComponentBuffer< T >::band_buf ( uint32_t  resno,
uint32_t  bandno 
) const
inlineprivate

◆ bounds()

template<typename T >
grk_rect grk::TileComponentBuffer< T >::bounds ( ) const
inline

Get bounds of tile component decode: reduced tile component coordinates of region encode: unreduced tile component coordinates of entire tile.

◆ cblk_ptr()

template<typename T >
T* grk::TileComponentBuffer< T >::cblk_ptr ( uint32_t  resno,
uint32_t  bandno,
uint32_t &  offsetx,
uint32_t &  offsety 
) const
inline

Get pointer to code block region in tile buffer.

Parameters
resnoresolution number
bandnoband number (0 for LL band of 0th resolution, otherwise 0 for LL band of 0th resolution, or {0,1,2} for {HL,LH,HH} bands
offsetxx offset of code block
offsetyy offset of code block

◆ get_region_band_coordinates()

template<typename T >
void grk::TileComponentBuffer< T >::get_region_band_coordinates ( uint32_t  resno,
uint32_t  bandno,
uint32_t *  tbx0,
uint32_t *  tby0,
uint32_t *  tbx1,
uint32_t *  tby1 
) const
inline

Get reduced coordinates of sub-band region.

Parameters
resnoresolution number
bandnoband number {0,1,2,3} for LL HL,LH and HH bands
tbx0x0 coordinate of region
tby0y0 coordinate of region
tbx1x1 coordinate of region
tby1y1 coordinate of region

◆ ptr() [1/3]

template<typename T >
T* grk::TileComponentBuffer< T >::ptr ( uint32_t  resno) const
inline

Get pointer to resolution buffer.

Parameters
resnoresolution number

◆ ptr() [2/3]

template<typename T >
T* grk::TileComponentBuffer< T >::ptr ( uint32_t  resno,
uint32_t  bandno 
) const
inline

Get pointer to band buffer.

Parameters
resnoresolution number
bandnoband number {0,1,2} for HL,LH and HH bands

Referenced by grk::WaveletForward< DWT >::run().

◆ ptr() [3/3]

template<typename T >
T* grk::TileComponentBuffer< T >::ptr ( void  ) const
inline

Get pointer to tile buffer.

◆ stride() [1/3]

template<typename T >
uint32_t grk::TileComponentBuffer< T >::stride ( uint32_t  resno) const
inline

◆ stride() [2/3]

template<typename T >
uint32_t grk::TileComponentBuffer< T >::stride ( uint32_t  resno,
uint32_t  bandno 
) const
inline

Get stride of band buffer.

Parameters
resnoresolution number
bandnoband number 0 for resno==0 LL band, or {0,1,2} for {HL,LH,HH} bands

Referenced by grk::WaveletForward< DWT >::run().

◆ stride() [3/3]

template<typename T >
uint32_t grk::TileComponentBuffer< T >::stride ( void  ) const
inline

◆ strided_area()

template<typename T >
uint64_t grk::TileComponentBuffer< T >::strided_area ( void  )
inline

◆ tile_buf()

template<typename T >
grk_buffer_2d<T>* grk::TileComponentBuffer< T >::tile_buf ( ) const
inlineprivate

◆ transfer()

template<typename T >
void grk::TileComponentBuffer< T >::transfer ( T **  buffer,
bool *  owns,
uint32_t *  stride 
)
inline

◆ unreduced_bounds()

template<typename T >
grk_rect grk::TileComponentBuffer< T >::unreduced_bounds ( ) const
inline

◆ use_band_buffers()

template<typename T >
bool grk::TileComponentBuffer< T >::use_band_buffers ( ) const
inlineprivate

Field Documentation

◆ m_bounds

template<typename T >
grk_rect grk::TileComponentBuffer< T >::m_bounds
private

◆ m_encode

template<typename T >
bool grk::TileComponentBuffer< T >::m_encode
private

◆ m_unreduced_bounds

template<typename T >
grk_rect grk::TileComponentBuffer< T >::m_unreduced_bounds
private

◆ num_resolutions

template<typename T >
uint32_t grk::TileComponentBuffer< T >::num_resolutions
private

◆ res_buffers

template<typename T >
std::vector<res_buf<T>* > grk::TileComponentBuffer< T >::res_buffers
private

◆ resolutions

template<typename T >
std::vector<grk_resolution*> grk::TileComponentBuffer< T >::resolutions
private

◆ whole_tile_decoding

template<typename T >
bool grk::TileComponentBuffer< T >::whole_tile_decoding
private

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