Grok 20.3.2
grk::ITileComponentWindow Struct Referenceabstract

Type-erased interface for tile component windows. More...

#include <TileComponentWindow.h>

Inheritance diagram for grk::ITileComponentWindow:
grk::TileComponentWindowBase< T > grk::TileComponentWindow< T >

Public Member Functions

virtual ~ITileComponentWindow ()=default
virtual bool alloc ()=0
virtual Rect32 bounds () const =0
virtual Rect32 unreducedBounds () const =0
virtual const Rect32getBandWindowPadded (uint8_t resno, t1::eBandOrientation orientation) const =0
virtual void toRelativeCoordinates (uint8_t resno, t1::eBandOrientation orientation, uint32_t &offsetx, uint32_t &offsety) const =0
virtual void transferData (void **data, uint32_t *stride)=0
virtual void attachData (void *data, uint32_t stride)=0
virtual uint32_t highestResStride () const =0
virtual uint64_t stridedArea () const =0
virtual void postProcessBlock (int32_t *srcData, t1::DecompressBlockExec *block, ISparseCanvas< int32_t > *regionWindow)=0
virtual void postProcessBlockHT (int32_t *srcData, t1::DecompressBlockExec *block, uint16_t stride, ISparseCanvas< int32_t > *regionWindow)=0

Detailed Description

Type-erased interface for tile component windows.

Allows TileComponent to hold a single polymorphic pointer instead of separate TileComponentWindow<int32_t>* and TileComponentWindow<int16_t>* members. Methods that return typed data use void* — callers that need typed access can static_cast via the concrete TileComponentWindow<T>*.

Constructor & Destructor Documentation

◆ ~ITileComponentWindow()

virtual grk::ITileComponentWindow::~ITileComponentWindow ( )
virtualdefault

Member Function Documentation

◆ alloc()

virtual bool grk::ITileComponentWindow::alloc ( )
pure virtual

◆ attachData()

virtual void grk::ITileComponentWindow::attachData ( void * data,
uint32_t stride )
pure virtual

◆ bounds()

virtual Rect32 grk::ITileComponentWindow::bounds ( ) const
pure virtual

◆ getBandWindowPadded()

virtual const Rect32 * grk::ITileComponentWindow::getBandWindowPadded ( uint8_t resno,
t1::eBandOrientation orientation ) const
pure virtual

◆ highestResStride()

virtual uint32_t grk::ITileComponentWindow::highestResStride ( ) const
pure virtual

◆ postProcessBlock()

virtual void grk::ITileComponentWindow::postProcessBlock ( int32_t * srcData,
t1::DecompressBlockExec * block,
ISparseCanvas< int32_t > * regionWindow )
pure virtual

◆ postProcessBlockHT()

virtual void grk::ITileComponentWindow::postProcessBlockHT ( int32_t * srcData,
t1::DecompressBlockExec * block,
uint16_t stride,
ISparseCanvas< int32_t > * regionWindow )
pure virtual

◆ stridedArea()

virtual uint64_t grk::ITileComponentWindow::stridedArea ( ) const
pure virtual

◆ toRelativeCoordinates()

virtual void grk::ITileComponentWindow::toRelativeCoordinates ( uint8_t resno,
t1::eBandOrientation orientation,
uint32_t & offsetx,
uint32_t & offsety ) const
pure virtual

◆ transferData()

virtual void grk::ITileComponentWindow::transferData ( void ** data,
uint32_t * stride )
pure virtual

◆ unreducedBounds()

virtual Rect32 grk::ITileComponentWindow::unreducedBounds ( ) const
pure virtual

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