|
Grok
9.7.5
|
#include <TileComponentWindowBuffer.h>
Public Member Functions | |
| TileComponentWindowBuffer (bool isCompressor, bool lossless, bool wholeTileDecompress, grk_rect32 tileCompUnreduced, grk_rect32 tileCompReduced, grk_rect32 unreducedTileCompOrImageCompWindow, Resolution *tileCompResolution, uint8_t numresolutions, uint8_t reducedNumResolutions) | |
| ~TileComponentWindowBuffer () | |
| void | toRelativeCoordinates (uint8_t resno, eBandOrientation orientation, uint32_t &offsetx, uint32_t &offsety) const |
| Transform code block offsets from canvas coordinates to either band coordinates (relative to sub band origin) or buffer coordinates (relative to associated resolution origin) More... | |
| const grk_buf2d< T, AllocatorAligned > * | getCodeBlockDestWindowREL (uint8_t resno, eBandOrientation orientation) const |
| Get code block destination window. More... | |
| const grk_buf2d< T, AllocatorAligned > * | getBandWindowBufferPaddedREL (uint8_t resno, eBandOrientation orientation) const |
| Get padded band window buffer. More... | |
| const grk_rect32 * | getBandWindowPadded (uint8_t resno, eBandOrientation orientation) const |
| Get padded band window. More... | |
| const grk_rect32 * | getResWindowPadded (uint8_t resno) const |
| const grk_buf2d< T, AllocatorAligned > * | getResWindowBufferSplitREL (uint8_t resno, eSplitOrientation orientation) const |
| const grk_buf2d< T, AllocatorAligned > * | getResWindowBufferREL (uint32_t resno) const |
| Get resolution window. More... | |
| grk_buf2d< T, AllocatorAligned > * | getResWindowBufferHighestREL (void) const |
| Get highest resolution window. More... | |
| bool | alloc () |
| grk_rect32 | bounds () const |
| Get bounds of tile component (canvas coordinates) decompress: reduced canvas coordinates of window compress: unreduced canvas coordinates of entire tile. More... | |
| grk_rect32 | unreducedBounds () const |
| uint64_t | stridedArea (void) const |
| void | attach (T *buffer, uint32_t stride) |
| void | transfer (T **buffer, uint32_t *stride) |
Private Member Functions | |
| bool | useBandWindows () const |
| bool | useBufferCoordinatesForCodeblock () const |
| uint8_t | getBandIndex (uint8_t resno, eBandOrientation orientation) const |
Private Attributes | |
| grk_rect32 | unreducedBounds_ |
| grk_rect32 | bounds_ |
| std::vector< Resolution * > | resolution_ |
| std::vector< ResWindowBuffer< T > * > | resWindowBuffers |
| uint8_t | numResolutions_ |
| bool | compress_ |
| bool | wholeTileDecompress_ |
|
inline |
References grk::TileComponentWindowBuffer< T >::bounds_, grk::TileComponentWindowBuffer< T >::compress_, grk::ResWindowBuffer< T >::getBandWindow(), grk::grk_rect< T >::intersection(), grk::TileComponentWindowBuffer< T >::numResolutions_, grk::TileComponentWindowBuffer< T >::resolution_, grk::TileComponentWindowBuffer< T >::resWindowBuffers, grk::grk_rect< T >::scaleDownCeilPow2(), grk::TileComponentWindowBuffer< T >::unreducedBounds_, grk::TileComponentWindowBuffer< T >::useBandWindows(), and grk::grk_rect< T >::valid().
|
inline |
|
inline |
|
inline |
|
inline |
Get bounds of tile component (canvas coordinates) decompress: reduced canvas coordinates of window compress: unreduced canvas coordinates of entire tile.
References grk::TileComponentWindowBuffer< T >::bounds_.
Referenced by grk::GrkImage::duplicate(), and grk::TileProcessor::isWholeTileDecompress().
|
inlineprivate |
Referenced by grk::TileComponentWindowBuffer< T >::toRelativeCoordinates().
|
inline |
Get padded band window buffer.
| resno | resolution number |
| orientation | band orientation {0,1,2,3} for {LL,HL,LH,HH} band windows |
If resno is > 0, return LL,HL,LH or HH band window, otherwise return LL resolution window
References grk::BAND_ORIENT_LL, grk::TileComponentWindowBuffer< T >::compress_, grk::TileComponentWindowBuffer< T >::resolution_, grk::TileComponentWindowBuffer< T >::resWindowBuffers, and grk::TileComponentWindowBuffer< T >::wholeTileDecompress_.
Referenced by grk::TileComponentWindowBuffer< T >::getCodeBlockDestWindowREL().
|
inline |
Get padded band window.
| resno | resolution number |
| orientation | band orientation {0,1,2,3} for {LL,HL,LH,HH} band windows |
References grk::TileComponentWindowBuffer< T >::resWindowBuffers.
Referenced by grk::TileComponent::allocSparseCanvas(), and grk::TileComponent::subbandIntersectsAOI().
|
inline |
Get code block destination window.
| resno | resolution number |
| orientation | band orientation {LL,HL,LH,HH} |
References grk::TileComponentWindowBuffer< T >::getBandWindowBufferPaddedREL(), grk::TileComponentWindowBuffer< T >::getResWindowBufferHighestREL(), and grk::TileComponentWindowBuffer< T >::useBufferCoordinatesForCodeblock().
Referenced by grk::TileComponent::postDecompressImpl().
|
inline |
Get highest resolution window.
References grk::TileComponentWindowBuffer< T >::resWindowBuffers.
Referenced by grk::TileComponentWindowBuffer< T >::attach(), grk::WaveletFwdImpl::encode_procedure(), grk::TileComponentWindowBuffer< T >::getCodeBlockDestWindowREL(), grk::TileProcessor::mct_encode(), grk::TileProcessor::mctDecompress(), grk::TileComponentWindowBuffer< T >::stridedArea(), and grk::TileComponentWindowBuffer< T >::transfer().
|
inline |
Get resolution window.
| resno | resolution number |
References grk::TileComponentWindowBuffer< T >::resWindowBuffers.
|
inline |
|
inline |
|
inline |
|
inline |
Transform code block offsets from canvas coordinates to either band coordinates (relative to sub band origin) or buffer coordinates (relative to associated resolution origin)
| resno | resolution number |
| orientation | band orientation {LL,HL,LH,HH} |
| offsetx | x offset of code block in canvas coordinates |
| offsety | y offset of code block in canvas coordinates |
References grk::TileComponentWindowBuffer< T >::getBandIndex(), grk::TileComponentWindowBuffer< T >::resolution_, and grk::TileComponentWindowBuffer< T >::useBufferCoordinatesForCodeblock().
Referenced by grk::TileComponent::postDecompressImpl().
|
inline |
|
inline |
|
inlineprivate |
|
inlineprivate |
|
private |
|
private |
|
private |
|
private |
|
private |
Referenced by grk::TileComponentWindowBuffer< T >::alloc(), grk::TileComponentWindowBuffer< T >::getBandWindowBufferPaddedREL(), grk::TileComponentWindowBuffer< T >::getBandWindowPadded(), grk::TileComponentWindowBuffer< T >::getResWindowBufferHighestREL(), grk::TileComponentWindowBuffer< T >::getResWindowBufferREL(), grk::TileComponentWindowBuffer< T >::getResWindowBufferSplitREL(), grk::TileComponentWindowBuffer< T >::getResWindowPadded(), grk::TileComponentWindowBuffer< T >::TileComponentWindowBuffer(), and grk::TileComponentWindowBuffer< T >::~TileComponentWindowBuffer().
|
private |
|
private |