using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace MatrixIO.IO.Bmff.Boxes
{
///
/// User Data Box ("udta")
///
[Box("udta", "User Data Box")]
public class UserDataBox : Box, ISuperBox
{
public UserDataBox() : base() { }
public UserDataBox(Stream stream) : base(stream) { }
private IList _Children = Portability.CreateList();
public IList Children
{
get { return _Children; }
}
internal override ulong CalculateSize()
{
return base.CalculateSize() + 4; // Fix for legacy trailing 0x0000000
}
protected override void SaveChildrenToStream(Stream stream)
{
base.SaveChildrenToStream(stream);
stream.WriteBEUInt32(0);
}
public IEnumerator GetEnumerator()
{
return Children.GetEnumerator();
}
System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
{
return Children.GetEnumerator();
}
}
}