| 676 | //----------------------------------------------------------------------------- |
| 677 | |
| 678 | void SimObject::unregisterObject() |
| 679 | { |
| 680 | mFlags.set(Removed); |
| 681 | |
| 682 | // Notify object first |
| 683 | onRemove(); |
| 684 | |
| 685 | // Clear out any pending notifications before |
| 686 | // we call our own, just in case they delete |
| 687 | // something that we have referenced. |
| 688 | clearAllNotifications(); |
| 689 | |
| 690 | // Notify all objects that are waiting for delete |
| 691 | // messages |
| 692 | if (getGroup()) |
| 693 | getGroup()->removeObject(this); |
| 694 | |
| 695 | processDeleteNotifies(); |
| 696 | |
| 697 | // Do removals from the Sim. |
| 698 | Sim::gNameDictionary->remove(this); |
| 699 | Sim::gIdDictionary->remove(this); |
| 700 | Sim::cancelPendingEvents(this); |
| 701 | } |
| 702 | |
| 703 | //----------------------------------------------------------------------------- |
| 704 |
nothing calls this directly
no test coverage detected