+ { return (array_data ? array_data[x][y] : NULL); }
+
+ unsigned int sizeofPixel () const
+ { return sizeof(T); }
+
+ unsigned int sizeofColumn () const
+ { return (sizeof(T) * m_ny); }
+
+ unsigned int sizeofArray () const
+ { return (sizeof(T) * m_nx * m_ny); }
+
+
+ private:
+ unsigned int m_nx;
+ unsigned int m_ny;
+ T** array_data;
+
+ void allocArray ()
+ {
+ if (array_data)
+ deleteArray();
+
+ array_data = new T*[m_nx];
+
+ for (unsigned int i = 0; i < m_nx; i++)
+ array_data[i] = new T[m_ny];
+ }