Inheritance: EbmlGeneric
        public override EbmlGeneric New()
        {
            EbmlMaster b = new EbmlMaster();
            b.Id = Id;
            b.InputOffset = InputOffset;
            b.Available = Available;
            b.Weight = Weight;

            return b;
        }
示例#2
0
        public override EbmlGeneric New()
        {
            EbmlMaster b = new EbmlMaster();

            b.Id          = Id;
            b.InputOffset = InputOffset;
            b.Available   = Available;
            b.Weight      = Weight;

            return(b);
        }
示例#3
0
 internal void RemoveRecursive(ulong id, EbmlMaster master)
 {
     foreach (EbmlGeneric m in master.Value.ToList())
     {
         if (m.Id == id)
         {
             master.Value.Remove(m);
         }
         else if (m is EbmlMaster)
         {
             RemoveRecursive(id, (EbmlMaster)m);
         }
     }
 }
示例#4
0
        public void PropagateExpectedOffset()
        {
            ExpectedValueOffset = ExpectedOffset + HeaderSize;
            ulong bsize = ExpectedValueOffset;

            foreach (EbmlGeneric g in Value)
            {
                g.ExpectedOffset = bsize;
                if (g is EbmlMaster)
                {
                    EbmlMaster h = g as EbmlMaster;
                    h.PropagateExpectedOffset();
                }
                else
                {
                    g.ExpectedValueOffset = bsize + g.HeaderSize;
                }
                bsize += g.TotalSize;
            }
        }
 internal void RemoveRecursive(ulong id, EbmlMaster master)
 {
     foreach (EbmlGeneric m in master.Value.ToList())
     {
         if (m.Id == id)
         {
             master.Value.Remove(m);
         }
         else if (m is EbmlMaster)
         {
             RemoveRecursive(id, (EbmlMaster)m);
         }
     }
 }