Example #1
0
/**
	@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;
}