internal static DxfClassesSection ClassesSectionFromBuffer(DxfCodePairBufferReader buffer, DxfAcadVersion version) { var section = new DxfClassesSection(); section.Clear(); while (buffer.ItemsRemain) { var pair = buffer.Peek(); if (DxfCodePair.IsSectionEnd(pair)) { // done reading classes buffer.Advance(); // swallow (0, ENDSEC) break; } if (pair.Code != 0) { throw new DxfReadException("Expected new class.", pair); } var cls = DxfClass.FromBuffer(buffer, version); if (cls != null) { section.Classes.Add(cls); } } return(section); }