Grok  7.6.2
Public Member Functions | Private Member Functions | Private Attributes | List of all members
grk::TileComponentWindowBuffer< T > Struct Template Reference

#include <TileComponentWindowBuffer.h>

Public Member Functions

 TileComponentWindowBuffer (bool isCompressor, bool lossless, bool wholeTileDecompress, grk_rect_u32 unreduced_tile_dim, grk_rect_u32 reduced_tile_dim, grk_rect_u32 unreduced_window_dim, Resolution *tile_comp_resolutions, uint8_t numresolutions, uint8_t reduced_num_resolutions)
 
 ~TileComponentWindowBuffer ()
 
void transform (uint8_t resno, eBandOrientation orientation, uint32_t &offsetx, uint32_t &offsety) const
 Tranform code block offsets. More...
 
const grk_buffer_2d< T > * getCodeBlockDestWindow (uint8_t resno, eBandOrientation orientation) const
 Get code block destination window. More...
 
const grk_buffer_2d< T > * getWindow (uint8_t resno, eBandOrientation orientation) const
 Get non-LL band window. More...
 
const grk_rect_u32 getPaddedTileBandWindow (uint8_t resno, eBandOrientation orientation) const
 
const grk_buffer_2d< T > * getSplitWindow (uint8_t resno, eSplitOrientation orientation) const
 
const grk_buffer_2d< T > * getWindow (uint32_t resno) const
 Get resolution window. More...
 
const grk_buffer_2d< T > * getWindow (void) const
 Get tile window. More...
 
bool alloc ()
 
grk_rect_u32 bounds () const
 Get bounds of tile component decompress: reduced tile component coordinates of window compress: unreduced tile component coordinates of entire tile. More...
 
grk_rect_u32 unreduced_bounds () const
 
uint64_t strided_area (void) const
 
void attach (T *buffer, uint32_t stride)
 
void transfer (T **buffer, bool *owns, uint32_t *stride)
 

Private Member Functions

bool use_band_windows () const
 
bool global_code_block_offset () const
 
uint8_t getBandIndex (uint8_t resno, eBandOrientation orientation) const
 
grk_buffer_2d< T > * band_window (uint8_t resno, eBandOrientation orientation) const
 If resno is > 0, return HL,LH or HH band window, otherwise return LL resolution window. More...
 
grk_buffer_2d< T > * tile_buf () const
 

Private Attributes

grk_rect_u32 m_unreduced_bounds
 
grk_rect_u32 m_bounds
 
std::vector< Resolution * > resolutions
 
std::vector< res_window< T > * > res_windows
 
uint8_t num_resolutions
 
bool m_compress
 
bool wholeTileDecompress
 

Constructor & Destructor Documentation

◆ TileComponentWindowBuffer()

template<typename T >
grk::TileComponentWindowBuffer< T >::TileComponentWindowBuffer ( bool  isCompressor,
bool  lossless,
bool  wholeTileDecompress,
grk_rect_u32  unreduced_tile_dim,
grk_rect_u32  reduced_tile_dim,
grk_rect_u32  unreduced_window_dim,
Resolution tile_comp_resolutions,
uint8_t  numresolutions,
uint8_t  reduced_num_resolutions 
)
inline

◆ ~TileComponentWindowBuffer()

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

Member Function Documentation

◆ alloc()

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

◆ attach()

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

◆ band_window()

template<typename T >
grk_buffer_2d<T>* grk::TileComponentWindowBuffer< T >::band_window ( uint8_t  resno,
eBandOrientation  orientation 
) const
inlineprivate

If resno is > 0, return HL,LH or HH band window, otherwise return LL resolution window.

Referenced by grk::TileComponentWindowBuffer< int32_t >::getCodeBlockDestWindow(), and grk::TileComponentWindowBuffer< int32_t >::getWindow().

◆ bounds()

template<typename T >
grk_rect_u32 grk::TileComponentWindowBuffer< T >::bounds ( ) const
inline

Get bounds of tile component decompress: reduced tile component coordinates of window compress: unreduced tile component coordinates of entire tile.

Referenced by grk::TileProcessor::is_whole_tilecomp_decoding().

◆ getBandIndex()

template<typename T >
uint8_t grk::TileComponentWindowBuffer< T >::getBandIndex ( uint8_t  resno,
eBandOrientation  orientation 
) const
inlineprivate

◆ getCodeBlockDestWindow()

template<typename T >
const grk_buffer_2d<T>* grk::TileComponentWindowBuffer< T >::getCodeBlockDestWindow ( uint8_t  resno,
eBandOrientation  orientation 
) const
inline

Get code block destination window.

Parameters
resnoresolution number
orientationband orientation {LL,HL,LH,HH}

Referenced by grk::TileComponent::postDecompressImpl().

◆ getPaddedTileBandWindow()

template<typename T >
const grk_rect_u32 grk::TileComponentWindowBuffer< T >::getPaddedTileBandWindow ( uint8_t  resno,
eBandOrientation  orientation 
) const
inline

◆ getSplitWindow()

template<typename T >
const grk_buffer_2d<T>* grk::TileComponentWindowBuffer< T >::getSplitWindow ( uint8_t  resno,
eSplitOrientation  orientation 
) const
inline

Referenced by grk::decompress_tile_53().

◆ getWindow() [1/3]

template<typename T >
const grk_buffer_2d<T>* grk::TileComponentWindowBuffer< T >::getWindow ( uint32_t  resno) const
inline

Get resolution window.

Parameters
resnoresolution number

◆ getWindow() [2/3]

template<typename T >
const grk_buffer_2d<T>* grk::TileComponentWindowBuffer< T >::getWindow ( uint8_t  resno,
eBandOrientation  orientation 
) const
inline

◆ getWindow() [3/3]

template<typename T >
const grk_buffer_2d<T>* grk::TileComponentWindowBuffer< T >::getWindow ( void  ) const
inline

Get tile window.

◆ global_code_block_offset()

template<typename T >
bool grk::TileComponentWindowBuffer< T >::global_code_block_offset ( ) const
inlineprivate

◆ strided_area()

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

◆ tile_buf()

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

◆ transfer()

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

◆ transform()

template<typename T >
void grk::TileComponentWindowBuffer< T >::transform ( uint8_t  resno,
eBandOrientation  orientation,
uint32_t &  offsetx,
uint32_t &  offsety 
) const
inline

Tranform code block offsets.

Parameters
resnoresolution number
orientationband orientation {LL,HL,LH,HH}
offsetxx offset of code block
offsetyy offset of code block

Referenced by grk::TileComponent::postDecompressImpl().

◆ unreduced_bounds()

template<typename T >
grk_rect_u32 grk::TileComponentWindowBuffer< T >::unreduced_bounds ( ) const
inline

Referenced by main().

◆ use_band_windows()

template<typename T >
bool grk::TileComponentWindowBuffer< T >::use_band_windows ( ) const
inlineprivate

Member Data Documentation

◆ m_bounds

template<typename T >
grk_rect_u32 grk::TileComponentWindowBuffer< T >::m_bounds
private

◆ m_compress

template<typename T >
bool grk::TileComponentWindowBuffer< T >::m_compress
private

◆ m_unreduced_bounds

template<typename T >
grk_rect_u32 grk::TileComponentWindowBuffer< T >::m_unreduced_bounds
private

◆ num_resolutions

template<typename T >
uint8_t grk::TileComponentWindowBuffer< T >::num_resolutions
private

◆ res_windows

template<typename T >
std::vector<res_window<T>* > grk::TileComponentWindowBuffer< T >::res_windows
private

◆ resolutions

template<typename T >
std::vector<Resolution*> grk::TileComponentWindowBuffer< T >::resolutions
private

◆ wholeTileDecompress

template<typename T >
bool grk::TileComponentWindowBuffer< T >::wholeTileDecompress
private

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