11#ifndef FIM_IMG_TRANS_MAP_HPP
12#define FIM_IMG_TRANS_MAP_HPP
25 std::vector< FR2Vect2TC<T> > mapping;
33 { FGASSERT_FAST(ii<ncol);
return ptr[ii]; }
46 { FGASSERT_FAST(ii<ncol);
return ptr[ii]; }
58 nrows(height), ncols(width), mapping(width*height) {}
60 void resize(
size_t width,
size_t height)
61 { nrows = height; ncols = width;
62 mapping.resize(height*width); }
64 size_t numRows()
const {
return nrows; }
65 size_t numCols()
const {
return ncols; }
66 size_t rowByteSize()
const
69 RowT operator[](
size_t ii)
70 { FGASSERT_FAST(ii<nrows);
71 return RowT(&mapping[0]+ii*ncols,ncols); }
72 ConstRowT operator[](
size_t ii)
const
73 { FGASSERT_FAST(ii<nrows);
74 return ConstRowT(&mapping[0]+ii*ncols,ncols); }
81 mapping.resize(aa.mapping.size());
82 memcpy(&mapping[0],&aa.mapping[0],
87 typename std::vector< FR2Vect2TC<T> >::iterator begin()
88 {
return mapping.begin(); }
89 typename std::vector< FR2Vect2TC<T> >::const_iterator begin()
const
90 {
return mapping.begin(); }
92 typename std::vector< FR2Vect2TC<T> >::iterator end()
93 {
return mapping.end(); }
94 typename std::vector< FR2Vect2TC<T> >::const_iterator end()
const
95 {
return mapping.end(); }