void SortRegions(vector<PSMILRegionElement*>& regions, PSMILElement* parent)
{
	ASSERT(0);
#if 0
	UPOSITION pos = parent->m_childList.GetHeadPosition();
	while (pos)
	{
		CPSMILElementImpl* pElement = (CPSMILElementImpl*)parent->m_childList.GetNext(pos);

		CComQIPtr<ILSMILRegionElement> region = pElement->m_pNode;
		if (region)
		{
			CPSMILRegionElement* pRegionElement = (CPSMILRegionElement*)pElement;

			CComBSTR bstrZIndex;
			region->getAttribute(L"z-index", &bstrZIndex);
			if (bstrZIndex.Length())
			{
				pRegionElement->m_computedZIndex = (long)_variant_t(bstrZIndex);
			}
			else
			{
				pRegionElement->m_computedZIndex = 0;	// ? that of parent
			}

		// Insert sorted
			for (int i = 0; i < regions.GetSize(); i++)
			{
				if (pRegionElement->m_computedZIndex < regions[i]->m_computedZIndex)
				{
					//regions.InsertAt(i, pRegionElement);
					break;
				}
			/*
				the rule concerning time priority is maintained, meaning that in the case
				of a z-index conflict, the media visible in the overlap will be determined
				by the region that is rendering the media that has most recently begun in
				time. If the conflicting media began at the same time, then the rule using
				the textual order of the media elements in the SMIL document is applied
				*/
				else if (pRegionElement->m_computedZIndex == regions[i]->m_computedZIndex)
				{
					//static_cast<SMILRegionElement*>(region.p)->m_p
				}
			}

			regions.InsertAt(i, pRegionElement);
		}
	}
#endif
}