/** @brief pure virtual destructor The Emitter destructor cleans up message dispatch relationships */ Emitter::~Emitter() { for(ReceiverList::Container::iterator i = receiverList->c.begin(); i != receiverList->c.end(); ++i) { ReceiverList::ReceiverSet & targets = (*i).second; for(ReceiverList::ReceiverSet::iterator j = targets.begin(); j != targets.end(); ++j) { Receiver * r = (*j); r->emitterDestroyed(*this); } } delete receiverList; receiverList = 0; }