12 template<
class Cell, const
bool debug=false>
class Array2D{
14 Array2D(
int xsize=0,
int ysize=0);
19 void resize(
int xmin,
int ymin,
int xmax,
int ymax);
22 inline bool isInside(
int x,
int y)
const;
23 inline const Cell&
cell(
int x,
int y)
const;
24 inline Cell&
cell(
int x,
int y);
43 template <
class Cell, const
bool debug>
59 std::cerr << __func__ << std::endl;
60 std::cerr <<
"m_xsize= " <<
m_xsize<< std::endl;
61 std::cerr <<
"m_ysize= " <<
m_ysize<< std::endl;
65 template <
class Cell, const
bool debug>
82 std::cerr << __func__ << std::endl;
83 std::cerr <<
"m_xsize= " << m_xsize<< std::endl;
84 std::cerr <<
"m_ysize= " << m_ysize<< std::endl;
89 template <
class Cell, const
bool debug>
100 std::cerr << __func__ << std::endl;
101 std::cerr <<
"m_xsize= " << m_xsize<< std::endl;
102 std::cerr <<
"m_ysize= " <<
m_ysize<< std::endl;
106 template <
class Cell, const
bool debug>
109 std::cerr << __func__ << std::endl;
110 std::cerr <<
"m_xsize= " <<
m_xsize<< std::endl;
111 std::cerr <<
"m_ysize= " <<
m_ysize<< std::endl;
121 template <
class Cell, const
bool debug>
124 std::cerr << __func__ << std::endl;
125 std::cerr <<
"m_xsize= " <<
m_xsize<< std::endl;
126 std::cerr <<
"m_ysize= " <<
m_ysize<< std::endl;
139 template <
class Cell, const
bool debug>
143 Cell ** newcells=
new Cell *[xsize];
144 for (
int x=0; x<xsize; x++){
145 newcells[x]=
new Cell[ysize];
147 int dx= xmin < 0 ? 0 : xmin;
148 int dy= ymin < 0 ? 0 : ymin;
151 for (
int x=dx; x<Dx; x++){
152 for (
int y=dy; y<Dy; y++){
153 newcells[x-xmin][y-ymin]=this->
m_cells[x][y];
163 template <
class Cell, const
bool debug>
168 template <
class Cell, const
bool debug>
175 template <
class Cell, const
bool debug>
const Cell & cell(const IntPoint &p) const
AccessibilityState cellState(const IntPoint &p) const
bool isInside(int x, int y) const
Array2D(int xsize=0, int ysize=0)
AccessibilityState cellState(int x, int y) const
Cell & cell(const IntPoint &p)
Array2D & operator=(const Array2D &)
int getPatchMagnitude() const
bool isInside(const IntPoint &p) const
void resize(int xmin, int ymin, int xmax, int ymax)
const Cell & cell(int x, int y) const