void WriteCurrentCell() { if ((cCell_area | cCell_cover) != 0) { //check cell limit if (m_num_used_cells >= BLOCK_LIMIT) { return; } //------------------------------------------ //alloc if required if ((m_num_used_cells + 1) >= m_cells.AllocatedSize) { m_cells = new ArrayList <CellAA>(m_cells, BLOCK_SIZE); } #if DEBUG //m_cells.SetData(m_num_used_cells, CellAA.dbugCreate( // cCell_x, cCell_y, // cCell_cover, cCell_area, // cCell_left, // cCell_right)); m_cells.SetData(m_num_used_cells, CellAA.Create( cCell_x, cCell_y, cCell_cover, cCell_area)); #else m_cells.SetData(m_num_used_cells, CellAA.Create( cCell_x, cCell_y, cCell_cover, cCell_area)); #endif m_num_used_cells++; } }