libwebm: removed old LoadBlockEntries

Change-Id: I340f444f719fa9c5d9da986f1527522d8a5f9812
This commit is contained in:
matthewjheaney 2011-04-03 11:24:05 -05:00
parent 7b07758854
commit bd833a82e4
2 changed files with 0 additions and 196 deletions

View File

@ -7132,200 +7132,6 @@ long Cluster::HasBlockEntries(
}
}
#if 0
void Cluster::LoadBlockEntries() const
{
//LoadBlockEntries loads all of the entries on the cluster.
//if (m_entries)
// return;
//if (m_entries_count == 0) //already parsed, and no entries found
// return;
if (m_pSegment == 0) //EOS cluster
return;
assert(m_pos >= m_element_start);
//assert(m_size); //preloaded only, or (partially) loaded
//assert(m_entries_count < 0);
IMkvReader* const pReader = m_pSegment->m_pReader;
//if (m_pos < 0)
// m_pos *= -1; //relative to segment
//long long pos = m_pSegment->m_start + m_pos; //absolute
if (m_element_size < 0)
{
assert(m_pos == m_element_start);
long len;
const long long id = ReadUInt(pReader, m_pos, len);
id;
assert(id >= 0);
assert(id == 0x0F43B675); //Cluster ID
m_pos += len; //consume id
const long long cluster_size = ReadUInt(pReader, m_pos, len);
assert(cluster_size > 0);
const long long unknown_size = (1LL << (7 * len)) - 1;
unknown_size;
assert(cluster_size != unknown_size);
m_pos += len; //consume size field
//m_pos now points to start of cluster payload
const long long cluster_stop = m_pos + cluster_size;
const long long element_size = cluster_stop - m_element_start;
assert((m_element_size <= 0) || (m_element_size == element_size));
if (m_element_size <= 0)
m_element_size = element_size;
}
//assert(m_size > 0);
//assert(m_element_size > m_size);
const long long cluster_stop = m_element_start + m_element_size;
if (m_pos >= cluster_stop)
return;
long long timecode = -1; //of cluster itself
//First count the number of entries (that remain)
long long pos = m_pos;
int entries_count = 0; //that remain
while (pos < cluster_stop)
{
if (Match(pReader, pos, 0x67, timecode))
{
if (m_timecode >= 0)
assert(timecode == m_timecode);
else
m_timecode = timecode;
}
else
{
long len;
const long long id = ReadUInt(pReader, pos, len);
assert(id >= 0); //TODO
assert((pos + len) <= cluster_stop);
pos += len; //consume id
const long long size = ReadUInt(pReader, pos, len);
assert(size >= 0); //TODO
assert((pos + len) <= cluster_stop);
pos += len; //consume size
if (id == 0x20) //BlockGroup ID
++entries_count;
else if (id == 0x23) //SimpleBlock ID
++entries_count;
pos += size; //consume payload
assert(pos <= cluster_stop);
}
}
assert(pos == cluster_stop);
assert(m_timecode >= 0);
if (entries_count == 0) //nothing remains to be done
{
m_pos = pos;
if (m_entries_count < 0)
m_entries_count = 0;
return;
}
BlockEntry** ppEntry;
if (m_entries_count < 0) //haven't parsed anything yet
{
assert(m_entries == NULL);
assert(m_entries_size == 0);
m_entries_size = entries_count;
m_entries = new BlockEntry*[m_entries_size];
ppEntry = m_entries;
m_entries_count = entries_count;
}
else
{
assert(m_entries);
assert(m_entries_size > 0);
assert(m_entries_count > 0);
assert(m_entries_count <= m_entries_size);
const long entries_size = m_entries_count + entries_count;
if (m_entries_size < entries_size)
{
BlockEntry** const entries = new BlockEntry*[entries_size];
assert(entries);
BlockEntry** src = m_entries;
BlockEntry** const src_end = src + m_entries_count;
BlockEntry** dst = entries;
while (src != src_end)
*dst++ = *src++;
delete[] m_entries;
m_entries = entries;
m_entries_size = entries_size;
}
ppEntry = m_entries + m_entries_count;
m_entries_count = entries_size;
}
while (m_pos < cluster_stop)
{
long len;
const long long id = ReadUInt(pReader, m_pos, len);
assert(id >= 0); //TODO
assert((m_pos + len) <= cluster_stop);
m_pos += len; //consume id
const long long size = ReadUInt(pReader, m_pos, len);
assert(size >= 0); //TODO
assert((m_pos + len) <= cluster_stop);
m_pos += len; //consume size
if (id == 0x20) //BlockGroup ID
CreateBlockGroup(m_pos, size, ppEntry);
else if (id == 0x23) //SimpleBlock ID
CreateSimpleBlock(m_pos, size, ppEntry);
m_pos += size; //consume payload
assert(m_pos <= cluster_stop);
}
assert(m_pos == cluster_stop);
assert((ppEntry - m_entries) == m_entries_count);
}
#endif
long long Cluster::GetTimeCode() const
{

View File

@ -578,8 +578,6 @@ public:
//void Load() const;
long Load(long long& pos, long& size) const;
//void LoadBlockEntries() const;
long Parse(long long& pos, long& size) const;
long GetEntry(long index, const mkvparser::BlockEntry*&) const;