//-----------------------------------------------------------------------------
// Copyright 2015-2018 RenderHeads Ltd.  All rights reserverd.
//-----------------------------------------------------------------------------

using System.Collections.Generic;

namespace RenderHeads.Media.AVProVideo
{
	/// <summary>
	/// Abstract class used to retreiving data from an adaptive Stream
	/// generated by StreamParser. Currently implemented by HLSStream.
	/// </summary>
	public abstract class Stream
	{
		public struct Chunk
		{
			public string name;
		}

		public abstract int Width { get; }

		public abstract int Height { get; }

		public abstract int Bandwidth { get; }

		public abstract string URL { get; }

		public abstract List<Chunk> GetAllChunks();

		public abstract List<Chunk> GetChunks();

		public abstract List<Stream> GetAllStreams();

		public abstract List<Stream> GetStreams();
	}
}
	
