Page 1 of 1

[Closed] ObjectList and ClassID

Posted: Thu Oct 05, 2006 10:23 am
by bensch
Since this summer Orxonox has a new interface to the ClassID and the ObjectList (formerly ClassList)

The idea started off, when we realized, that #include "class_id.h" was recompiling the the whole project on a change. Furthermore the adding a new ClassID was a strange confusing and error prone process.

The new ClassID is a fast, reliable, extensible, modular and easy to use functionality, that only needs the programmer to extend the class with some macros (like the Q_OBJECT; macro from Qt).

The new ObjectList is like the old ClassList a container for objects of any type. New is that the ObjectLists are stored in parallel to the ClassID's like that they can be referenced faster (constant time instead of linear time).
Furthermore the ObjectList is (more) typesafe, so you do not have to dynamic_cast your way from BaseObject upwards. instead you can just retrieve the object of your designated type as such a typed object.

With the new implementation we hope that recompiling is faster, that registering and unregistering objects to the ObjectList is more performant, ant that general interaction with ClassID and ObjectLists is more intuitive, and less error prone.

To read more about these concepts please read the Wiki page: https://dev.orxonox.net/wiki/ObjectList