private bool startTile(int tile)
{
if ((m_flags & TiffFlags.CODERSETUP) != TiffFlags.CODERSETUP)
{
if (!m_currentCodec.SetupDecode())
return false;
m_flags |= TiffFlags.CODERSETUP;
}
m_curtile = tile;
m_row = (tile % howMany(m_dir.td_imagewidth, m_dir.td_tilewidth)) * m_dir.td_tilelength;
m_col = (tile % howMany(m_dir.td_imagelength, m_dir.td_tilelength)) * m_dir.td_tilewidth;
m_rawcp = 0;
if ((m_flags & TiffFlags.NOREADRAW) == TiffFlags.NOREADRAW)
m_rawcc = 0;
else
m_rawcc = (int)m_dir.td_stripbytecount[tile];
return m_currentCodec.PreDecode((short)(tile / m_dir.td_stripsperimage));
}