8#if !defined(ISCE_IMAGE_TILE_ICC)
9#error "Tile.icc is an implementation detail of class Tile"
12#define IDX1D(i,j,w) (((i)*(w))+(j))
16isce3::image::Tile<T>::Tile() {}
20isce3::image::Tile<T>::Tile(
const Tile & refTile) :
21 _width(refTile.width()),
22 _rowStart(refTile.rowStart()), _rowEnd(refTile.rowEnd()),
23 _firstImageRow(refTile.firstImageRow()), _lastImageRow(refTile.lastImageRow()) {}
27void isce3::image::Tile<T>::allocate() {
28 _data.resize(length() * _width);
33size_t isce3::image::Tile<T>::length()
const {
34 return _lastImageRow - _firstImageRow;
39size_t isce3::image::Tile<T>::width()
const {
45void isce3::image::Tile<T>::width(
size_t widthVal) {
51size_t isce3::image::Tile<T>::rowStart()
const {
57void isce3::image::Tile<T>::rowStart(
size_t value) {
63size_t isce3::image::Tile<T>::rowEnd()
const {
69void isce3::image::Tile<T>::rowEnd(
size_t value) {
75size_t isce3::image::Tile<T>::firstImageRow()
const {
76 return _firstImageRow;
81void isce3::image::Tile<T>::firstImageRow(
size_t value) {
82 _firstImageRow = value;
87size_t isce3::image::Tile<T>::lastImageRow()
const {
93void isce3::image::Tile<T>::lastImageRow(
size_t value) {
94 _lastImageRow = value;
99std::valarray<T> & isce3::image::Tile<T>::data() {
106declare(pyre::journal::info_t & info)
const {
107 info <<
"Tile parameters:" << pyre::journal::newline
108 <<
" - first image row : " << firstImageRow() << pyre::journal::newline
109 <<
" - last image row : " << lastImageRow() << pyre::journal::newline
110 <<
" - row start : " << rowStart() << pyre::journal::newline
111 <<
" - row end : " << rowEnd() << pyre::journal::newline
112 <<
" - width : " << width() << pyre::journal::newline;