Beispiel #1
0
uint32	DataStream_SequenceBase::GetAttribute(DataStream::DatastreamUIntAttribute attr)
{
	switch(attr)
	{
	case DataStream::KFinished:
		return !current_item; // Also returns finsihed on non-started items
	case DataStream::KCalculateLength:
		{
			uint32 len = 0;
			
			DataStream *item = First();
			while(item)
			{
				if(item->GetEnabledRecord())
					len += item->CalculateLength();
				item = item->Suc();
			}
		
			return len;
		}
	}
	
	return DataStream::GetAttribute(attr);
}