- Standardized use of PClassActor::AllActorClasses for iterating over all classes of actors

instead of PClass::m_Types (now PClass::AllClasses).
- Removed ClassIndex from PClass. It was only needed by FArchive, and maps take care of the
  problem just as well.
- Moved PClass into a larger type system (which is likely to change some/lots once I try and actually use it and have a better feel for what I need from it).

SVN r2281 (scripting)
This commit is contained in:
Randy Heit 2010-04-16 02:57:51 +00:00
commit ee55e0319f
24 changed files with 1200 additions and 346 deletions

View file

@ -283,6 +283,22 @@ void Mark(DObject **obj)
}
}
//==========================================================================
//
// MarkArray
//
// Mark an array of objects gray.
//
//==========================================================================
void MarkArray(DObject **obj, size_t count)
{
for (size_t i = 0; i < count; ++i)
{
Mark(obj[i]);
}
}
//==========================================================================
//
// MarkRoot
@ -341,9 +357,9 @@ static void MarkRoot()
}
}
// Mark classes
for (unsigned j = 0; j < PClass::m_Types.Size(); ++j)
for (unsigned j = 0; j < PClass::AllClasses.Size(); ++j)
{
Mark(PClass::m_Types[j]);
Mark(PClass::AllClasses[j]);
}
// Mark bot stuff.
Mark(bglobal.firstthing);