public void KeepsTrackOfElements() { var iterator = new PlyHeaderIterator(ValidHeader); Assert.IsTrue(iterator.IsOnFirstElement); Assert.IsTrue(iterator.IsOnFirstProperty); Assert.IsFalse(iterator.IsIterationDone); Assert.AreEqual(iterator.CurrentProperty, ValidHeader.Elements[0].Properties[0]); iterator.MoveNext(); Assert.IsFalse(iterator.IsOnFirstElement); Assert.IsFalse(iterator.IsOnFirstProperty); Assert.IsFalse(iterator.IsIterationDone); Assert.AreEqual(iterator.CurrentElement, 0); Assert.AreEqual(iterator.CurrentProperty, ValidHeader.Elements[0].Properties[1]); iterator.MoveNext(); iterator.MoveNext(); Assert.AreEqual(iterator.CurrentElement, 0); Assert.AreEqual(iterator.CurrentProperty, ValidHeader.Elements[0].Properties[0]); iterator.MoveNext(); iterator.MoveNext(); iterator.MoveNext(); Assert.IsFalse(iterator.IsOnFirstElement); Assert.AreEqual(iterator.CurrentProperty, ValidHeader.Elements[1].Properties[0]); Assert.IsTrue(iterator.IsOnFirstProperty); iterator.MoveNext(); iterator.MoveNext(); Assert.IsTrue(iterator.IsIterationDone); }
public PlyWriter(Stream targetStream, PlyHeader header) { if (targetStream == null) { throw new ArgumentNullException($"Cannot initialize {nameof(PlyWriter)}. Given {nameof(targetStream)} is null.", nameof(targetStream)); } if (header == null) { throw new ArgumentNullException($"Cannot initialize {nameof(PlyWriter)}. Given {nameof(header)} is null.", nameof(header)); } if (!targetStream.CanWrite) { throw new ArgumentException($"Cannot initialize {nameof(PlyWriter)}. Given {nameof(targetStream)} is readonly.", nameof(targetStream)); } _stream = targetStream; _iterator = new PlyHeaderIterator(header); }
public PlyReader(PlyHeader header) { _iterator = new PlyHeaderIterator(header); }