void CParticleGroupManager::Clear()
{
	ClearCreated();

	if(!m_mapRegistered.empty())
	{
		my_map::iterator iterBegin = m_mapRegistered.begin();
		my_map::iterator iterEnd = m_mapRegistered.end();
		my_map::iterator iter;
		for(iter = iterBegin; iter != iterEnd; ++iter)
		{
			delete (*iter).second;
		}
		m_mapRegistered.clear();
	}
}
Beispiel #2
0
Integer DestroyVirtualAddress (Integer vma)
{
  caddr_t data, tag;
  Integer aligned_vma = vma - MemoryPageOffset(vma);

  if (!Created(vma))
    return(vma);
  
  data = (caddr_t)&DataSpace[aligned_vma];
  tag = (caddr_t)&TagSpace[aligned_vma];
  if (munmap(data, sizeof(Integer[MemoryPageSize])))
    punt ("Couldn't unmap data page at %x for VMA %x", data, vma);
  if (munmap(tag, sizeof(Tag[MemoryPageSize])))
    punt ("Couldn't unmap tag page at %x for VMA %x", tag, vma);

  ClearCreated(vma);
  return(vma);
}