|
Grok 15.1.0
|
#include <ResWindow.h>
Public Types | |
| typedef grk_buf2d< T, AllocatorAligned > | Buf2dAligned |
Private Member Functions | |
| ResWindow (uint8_t numresolutions, uint8_t resno, Buf2dAligned *resWindowHighestResREL, ResSimple tileCompAtRes, ResSimple tileCompAtLowerRes, grk_rect32 resWindow, grk_rect32 tileCompWindowUnreduced, grk_rect32 tileCompUnreduced, uint32_t FILTER_WIDTH) | |
| ~ResWindow () | |
| void | genSplitWindowBuffers (Buf2dAligned **resWindowBufferSplit, Buf2dAligned *resWindowBuffer, Buf2dAligned *bandWindowsBuffersPaddedXL, Buf2dAligned *bandWindowsBuffersPaddedXH, bool absolute) |
| bool | alloc (bool clear) |
| grk_buf2d_simple< int32_t > | getResWindowBufferSimple (void) const |
| grk_buf2d_simple< float > | getResWindowBufferSimpleF (void) const |
| void | disableBandWindowAllocation (void) |
| Buf2dAligned * | getResWindowBufferSplitREL (eSplitOrientation orientation) const |
| const grk_rect32 * | getBandWindowPadded (eBandOrientation orientation) const |
| const Buf2dAligned * | getBandWindowBufferPaddedREL (eBandOrientation orientation) const |
| const grk_buf2d_simple< int32_t > | getBandWindowBufferPaddedSimple (eBandOrientation orientation) const |
| const grk_buf2d_simple< float > | getBandWindowBufferPaddedSimpleF (eBandOrientation orientation) const |
| Buf2dAligned * | getResWindowBufferREL (void) const |
Static Private Member Functions | |
| static grk_rect32 | getPaddedBandWindow (uint8_t numDecomps, uint8_t orientation, grk_rect32 unreducedTileCompWindow, grk_rect32 unreducedTileComp, uint32_t padding, grk_rect32 &paddedResWindow) |
| Get band window (in tile component coordinates) for specified number of decompositions (with padding) | |
Private Attributes | |
| bool | allocated_ |
| uint32_t | filterWidth_ |
| ResSimple | tileCompAtRes_ |
| ResSimple | tileCompAtLowerRes_ |
| Buf2dAligned * | resWindowBuffer_ |
| Buf2dAligned * | resWindowBufferSplit_ [SPLIT_NUM_ORIENTATIONS] |
| std::vector< Buf2dAligned * > | bandWindowsBuffersPadded_ |
| std::vector< grk_rect32 > | bandWindowsBoundsPadded_ |
| Buf2dAligned * | resWindowBufferHighestResREL_ |
| Buf2dAligned * | resWindowBufferREL_ |
| Buf2dAligned * | resWindowBufferSplitREL_ [SPLIT_NUM_ORIENTATIONS] |
| std::vector< Buf2dAligned * > | bandWindowsBuffersPaddedREL_ |
Friends | |
| struct | TileComponentWindowBase< T > |
| struct | TileComponentWindow< T > |
Manage all buffers for a single DWT resolution. This class stores a buffer for the resolution (in REL coordinates), and also buffers for the 4 sub-bands generated by the DWT transform (in Canvas coordinates).
Note: if highest resolution window is set, then only this window allocates memory, and all other ResWindow buffers attach themselves to the highest resolution buffer
| typedef grk_buf2d<T, AllocatorAligned> grk::ResWindow< T >::Buf2dAligned |
|
inlineprivate |
References allocated_, grk::BAND_NUM_ORIENTATIONS, grk::BAND_ORIENT_LH, grk::BAND_ORIENT_LL, bandWindowsBoundsPadded_, bandWindowsBuffersPadded_, bandWindowsBuffersPaddedREL_, grk::ceildivpow2(), filterWidth_, genSplitWindowBuffers(), getPaddedBandWindow(), grk::ResSimple::numTileBandWindows, resWindowBuffer_, resWindowBufferHighestResREL_, resWindowBufferREL_, resWindowBufferSplit_, resWindowBufferSplitREL_, grk::SPLIT_NUM_ORIENTATIONS, tileCompAtLowerRes_, tileCompAtRes_, grk::grk_rect< T >::y0, and grk::grk_rect< T >::y1.
|
inlineprivate |
|
inlineprivate |
References allocated_, grk::BAND_ORIENT_HH, grk::BAND_ORIENT_HL, grk::BAND_ORIENT_LH, bandWindowsBuffersPadded_, bandWindowsBuffersPaddedREL_, filterWidth_, resWindowBuffer_, resWindowBufferHighestResREL_, resWindowBufferREL_, resWindowBufferSplit_, resWindowBufferSplitREL_, grk::SPLIT_H, grk::SPLIT_L, grk::SPLIT_NUM_ORIENTATIONS, and tileCompAtLowerRes_.
|
inlineprivate |
References resWindowBufferHighestResREL_, and resWindowBufferREL_.
|
inlineprivate |
|
inlineprivate |
References bandWindowsBuffersPaddedREL_.
|
inlineprivate |
References bandWindowsBuffersPadded_.
|
inlineprivate |
References bandWindowsBuffersPadded_.
|
inlineprivate |
References bandWindowsBoundsPadded_.
|
inlinestaticprivate |
Get band window (in tile component coordinates) for specified number of decompositions (with padding)
Note: if numDecomps is zero, then the band window (and there is only one) is equal to the unreduced tile component window (with padding)
References grk::BAND_NUM_ORIENTATIONS, grk::grk_rect< T >::clip_IN_PLACE(), grk::ResSimple::getBandWindow(), grk::grk_rect< T >::grow_IN_PLACE(), grk::grk_rect< T >::intersection(), and grk::grk_rect< T >::setOrigin().
Referenced by ResWindow().
|
inlineprivate |
References resWindowBufferREL_.
|
inlineprivate |
References resWindowBuffer_.
|
inlineprivate |
References resWindowBuffer_.
|
inlineprivate |
References resWindowBufferSplitREL_.
|
friend |
|
friend |
|
private |
Referenced by alloc(), and ResWindow().
|
private |
Referenced by getBandWindowPadded(), and ResWindow().
|
private |
Referenced by alloc(), getBandWindowBufferPaddedSimple(), getBandWindowBufferPaddedSimpleF(), ResWindow(), and ~ResWindow().
|
private |
Referenced by alloc(), getBandWindowBufferPaddedREL(), ResWindow(), and ~ResWindow().
|
private |
Referenced by alloc(), and ResWindow().
|
private |
Referenced by alloc(), getResWindowBufferSimple(), getResWindowBufferSimpleF(), ResWindow(), and ~ResWindow().
|
private |
Referenced by alloc(), disableBandWindowAllocation(), and ResWindow().
|
private |
Referenced by alloc(), disableBandWindowAllocation(), getResWindowBufferREL(), ResWindow(), and ~ResWindow().
|
private |
Referenced by alloc(), ResWindow(), and ~ResWindow().
|
private |
Referenced by alloc(), getResWindowBufferSplitREL(), ResWindow(), and ~ResWindow().
|
private |
Referenced by alloc(), genSplitWindowBuffers(), and ResWindow().
|
private |
Referenced by ResWindow().