void SceneTreeItemParticleInnerEmmiter::DoSync(QStandardItem *rootItem, DAVA::ParticleEmitter *emitter)
{
	if(NULL != rootItem && NULL != emitter)
	{
		
		DAVA::Set<DAVA::ParticleLayer *> layerSet;
		size_t itemsCount = emitter->GetLayers().size();
		for (size_t i=0; i<itemsCount; i++)
		{
			layerSet.insert(emitter->GetLayers()[i]);
		}
		for(int i = 0; i < rootItem->rowCount(); ++i)
		{	
			DVASSERT(((SceneTreeItem*)rootItem->child(i))->ItemType() == SceneTreeItem::EIT_Layer);
			SceneTreeItemParticleLayer *childItem = (SceneTreeItemParticleLayer *) rootItem->child(i);
			DAVA::Set<DAVA::ParticleLayer *>::iterator it = layerSet.find(childItem->layer);
			if (it!=layerSet.end())
			{
				layerSet.erase(it);	
				childItem->DoSync(childItem, childItem->layer);
			}
			else
			{
				rootItem->removeRow(i);
				i--;
			}
		}
		for (DAVA::Set<DAVA::ParticleLayer *>::iterator it = layerSet.begin(), e=layerSet.end(); it!=e; ++it)
		{
			rootItem->appendRow(new SceneTreeItemParticleLayer(emitter, *it));
		}					
	}
}