SPATMOD::IMAGE::SECTION_ITERATOR Class Reference
Iterator to process a specified section in subsections.
More...
#include <spatmod/imagesection.h>
List of all members.
Public Member Functions |
| | SECTION_ITERATOR () |
| | ~SECTION_ITERATOR () |
| void | Begin () |
| ERRVALUE | Begin (const SECTION &TotalSection, const BASE &TargetImage, const BASE &SourceImage, double StripSizeY=0) |
| ERRVALUE | Begin (const SECTION &TotalSection, const BASE &Image, double StripSizeY=0) |
| ERRVALUE | Begin (const SECTION &TotalSection, double StripSizeY, double InteriorTileSizeX, double InteriorTileSizeY, double FirstTileSizeX=0, double FirstTileSizeY=0, double LastTileSizeX=0, double LastTileSizeY=0, double FirstStripSizeY=0) |
| ERRVALUE | Begin (const SECTION &TotalSection, const SPANS &SpansX, const SPANS &SpansY, double StripSizeY=0, double FirstStripSizeY=0) |
| ERRVALUE | Begin (const SECTION &TotalSection, double StripSizeY) |
| INT32 | ComputeMaxSubSectionColumns () const |
| INT32 | ComputeMaxSubSectionRows () const |
| double | ComputeMaxSubSectionSizeX () const |
| double | ComputeMaxSubSectionSizeY () const |
| INT32 | ComputeNumIterations () const |
| double | GetFirstStripSizeY () const |
| double | GetFirstTileSizeX () const |
| double | GetFirstTileSizeY () const |
| double | GetInteriorTileSizeX () const |
| double | GetInteriorTileSizeY () const |
| double | GetLastTileSizeX () const |
| double | GetLastTileSizeY () const |
| double | GetMinX () const |
| double | GetMinY () const |
| UINT32 | GetNumColumnsOfTiles () const |
| UINT32 | GetNumRowsOfTiles () const |
| const SPANS & | GetSpansX () const |
| const SPANS & | GetSpansY () const |
| double | GetStripSizeY () const |
| const SECTION & | GetTotalSection () const |
| bool | IsEnd () const |
| bool | IsIrregular () const |
| bool | IsTileAligned (const DIMENSIONS &dimensions) const |
| const SECTION & | operator* () const |
| SECTION_ITERATOR & | operator++ () |
| const SECTION * | operator-> () const |
| void | SetIrregular (const SECTION &TotalSection, UINT32 MaxColumns, UINT32 MaxRows) |
Detailed Description
Iterator to process a specified section in subsections.
Can iterate by strips, tiles or strips within tiles. When iterating by tiles, all tiles in a tile-row are processed before any tiles in the next tile-row. If tiles are further divided by strips all strips in one tile are processed before moving to the next tile. It is up to the caller to ensure that the subsection size is small enough to fit in a memory buffer when eventually used for read/write access.
Constructor & Destructor Documentation
| SPATMOD::IMAGE::SECTION_ITERATOR::SECTION_ITERATOR |
( |
|
) |
|
Construct empty iterator.
| SPATMOD::IMAGE::SECTION_ITERATOR::~SECTION_ITERATOR |
( |
|
) |
|
Member Function Documentation
| void SPATMOD::IMAGE::SECTION_ITERATOR::Begin |
( |
|
) |
|
Restart iterator at beginning using previous section settings.
| ERRVALUE SPATMOD::IMAGE::SECTION_ITERATOR::Begin |
( |
const SECTION & |
TotalSection, |
|
|
const BASE & |
TargetImage, |
|
|
const BASE & |
SourceImage, |
|
|
double |
StripSizeY = 0 | |
|
) |
| | |
Start iterator with optimal sequence based on source and target image capabilities.
Source and target image must have same total dimensions.
- Parameters:
-
| TotalSection | Total section to iterate through |
| TargetImage | Target image |
| SourceImage | Source image |
| StripSizeY | Size of strip, 0 for default based on tile size and sequence |
| ERRVALUE SPATMOD::IMAGE::SECTION_ITERATOR::Begin |
( |
const SECTION & |
TotalSection, |
|
|
const BASE & |
Image, |
|
|
double |
StripSizeY = 0 | |
|
) |
| | |
Start iterator with tile properties obtained from image.
Will also determine proper alignment of tiles if total section does not cover entire image
- Parameters:
-
| TotalSection | Total section to iterate through |
| Image | Image to obtain tile properties from |
| StripSizeY | Size of strip, 0 if processing whole tiles |
| ERRVALUE SPATMOD::IMAGE::SECTION_ITERATOR::Begin |
( |
const SECTION & |
TotalSection, |
|
|
double |
StripSizeY, |
|
|
double |
InteriorTileSizeX, |
|
|
double |
InteriorTileSizeY, |
|
|
double |
FirstTileSizeX = 0, |
|
|
double |
FirstTileSizeY = 0, |
|
|
double |
LastTileSizeX = 0, |
|
|
double |
LastTileSizeY = 0, |
|
|
double |
FirstStripSizeY = 0 | |
|
) |
| | |
Start iterator with values for tile or tile/strip sequence.
- Parameters:
-
| TotalSection | Total section to iterate through |
| StripSizeY | Size of strip, 0 if processing whole tiles |
| InteriorTileSizeX | X tile size |
| InteriorTileSizeY | Y tile size |
| FirstTileSizeX | X size for first tile if different, 0 if same |
| FirstTileSizeY | Y size for first tile if different, 0 if same |
| LastTileSizeX | X size for last tile if different, 0 to compute |
| LastTileSizeY | Y size for last tile if different, 0 to compute |
| FirstStripSizeY | Y size of first strip if different, 0 if same |
| ERRVALUE SPATMOD::IMAGE::SECTION_ITERATOR::Begin |
( |
const SECTION & |
TotalSection, |
|
|
const SPANS & |
SpansX, |
|
|
const SPANS & |
SpansY, |
|
|
double |
StripSizeY = 0, |
|
|
double |
FirstStripSizeY = 0 | |
|
) |
| | |
Start iterator with values for tile or tile/strip sequence.
- Parameters:
-
| TotalSection | Total section to iterate through |
| SpansX | X spans, size must match total section |
| SpansY | Y spans, size must match total section |
| StripSizeY | Size of strip, 0 if processing whole tiles |
| FirstStripSizeY | Y size of first strip if different, 0 if same |
| ERRVALUE SPATMOD::IMAGE::SECTION_ITERATOR::Begin |
( |
const SECTION & |
TotalSection, |
|
|
double |
StripSizeY | |
|
) |
| | |
Start iterator with values for strip sequence.
- Parameters:
-
| TotalSection | Total section to iterate through |
| StripSizeY | Size of strip |
| INT32 SPATMOD::IMAGE::SECTION_ITERATOR::ComputeMaxSubSectionColumns |
( |
|
) |
const |
Compute maximum subsection columns.
| INT32 SPATMOD::IMAGE::SECTION_ITERATOR::ComputeMaxSubSectionRows |
( |
|
) |
const |
Compute maximum subsection rows.
| double SPATMOD::IMAGE::SECTION_ITERATOR::ComputeMaxSubSectionSizeX |
( |
|
) |
const |
Compute maximum subsection X size.
| double SPATMOD::IMAGE::SECTION_ITERATOR::ComputeMaxSubSectionSizeY |
( |
|
) |
const |
Compute maximum subsection Y size.
| INT32 SPATMOD::IMAGE::SECTION_ITERATOR::ComputeNumIterations |
( |
|
) |
const |
Compute total number of iterations.
| double SPATMOD::IMAGE::SECTION_ITERATOR::GetFirstStripSizeY |
( |
|
) |
const [inline] |
Get Y size of first strip.
| double SPATMOD::IMAGE::SECTION_ITERATOR::GetFirstTileSizeX |
( |
|
) |
const [inline] |
Get X size of first tile.
| double SPATMOD::IMAGE::SECTION_ITERATOR::GetFirstTileSizeY |
( |
|
) |
const [inline] |
Get Y size of first tile.
| double SPATMOD::IMAGE::SECTION_ITERATOR::GetInteriorTileSizeX |
( |
|
) |
const [inline] |
Get X size of interior tile.
| double SPATMOD::IMAGE::SECTION_ITERATOR::GetInteriorTileSizeY |
( |
|
) |
const [inline] |
Get Y size of interior tile.
| double SPATMOD::IMAGE::SECTION_ITERATOR::GetLastTileSizeX |
( |
|
) |
const [inline] |
| double SPATMOD::IMAGE::SECTION_ITERATOR::GetLastTileSizeY |
( |
|
) |
const [inline] |
| double SPATMOD::IMAGE::SECTION_ITERATOR::GetMinX |
( |
|
) |
const [inline] |
| double SPATMOD::IMAGE::SECTION_ITERATOR::GetMinY |
( |
|
) |
const [inline] |
| UINT32 SPATMOD::IMAGE::SECTION_ITERATOR::GetNumColumnsOfTiles |
( |
|
) |
const [inline] |
Get number of columns of tiles.
| UINT32 SPATMOD::IMAGE::SECTION_ITERATOR::GetNumRowsOfTiles |
( |
|
) |
const [inline] |
Get number of rows of tiles.
| const SPANS& SPATMOD::IMAGE::SECTION_ITERATOR::GetSpansX |
( |
|
) |
const [inline] |
| const SPANS& SPATMOD::IMAGE::SECTION_ITERATOR::GetSpansY |
( |
|
) |
const [inline] |
| double SPATMOD::IMAGE::SECTION_ITERATOR::GetStripSizeY |
( |
|
) |
const [inline] |
| const SECTION& SPATMOD::IMAGE::SECTION_ITERATOR::GetTotalSection |
( |
|
) |
const [inline] |
Get total section which was specified in Begin().
| bool SPATMOD::IMAGE::SECTION_ITERATOR::IsEnd |
( |
|
) |
const [inline] |
| bool SPATMOD::IMAGE::SECTION_ITERATOR::IsIrregular |
( |
|
) |
const [inline] |
Determine if iterator is irregular.
| bool SPATMOD::IMAGE::SECTION_ITERATOR::IsTileAligned |
( |
const DIMENSIONS & |
dimensions |
) |
const |
Determine if iterator tiles align with image dimensions.
- Parameters:
-
| dimensions | Image dimensions |
| const SECTION& SPATMOD::IMAGE::SECTION_ITERATOR::operator* |
( |
|
) |
const [inline] |
Dereference operator, returns reference to SECTION.
| const SECTION* SPATMOD::IMAGE::SECTION_ITERATOR::operator-> |
( |
|
) |
const [inline] |
Dereference operator, returns pointer to SECTION.
| void SPATMOD::IMAGE::SECTION_ITERATOR::SetIrregular |
( |
const SECTION & |
TotalSection, |
|
|
UINT32 |
MaxColumns, |
|
|
UINT32 |
MaxRows | |
|
) |
| | |
Set iterator as irregular.
An irregular iterator cannot does not support simple increment, the owner is responsible for computing the actual section needed at each iteration.
- Parameters:
-
| TotalSection | Total section to iterate through |
| MaxColumns | Maximum columns |
| MaxRows | Maximum rows |
The documentation for this class was generated from the following file: