/// <summary> /// /// </summary> /// <param name="stream"></param> /// <returns></returns> public IGeometry Read(Stream stream) { BinaryReader reader = null; ByteOrder byteOrder = (ByteOrder)stream.ReadByte(); // "Rewind" to let Read(BinaryReader) skip this byte // in collection and non-collection geometries. stream.Position = 0; try { if (byteOrder == ByteOrder.BigEndian) { reader = new BEBinaryReader(stream); } else { reader = new BinaryReader(stream); } return(Read(reader)); } finally { if (reader != null) { reader.Close(); } } }
/// <summary> /// /// </summary> /// <param name="stream"></param> /// <returns></returns> public virtual IGeometry Read(Stream stream) { BinaryReader reader = null; ByteOrder byteOrder = (ByteOrder) stream.ReadByte(); try { if (byteOrder == ByteOrder.BigEndian) reader = new BEBinaryReader(stream); else reader = new BinaryReader(stream); return Read(reader); } finally { if (reader != null) reader.Close(); } }
/// <summary> /// /// </summary> /// <param name="stream"></param> /// <returns></returns> public IGeometry Read(Stream stream) { BinaryReader reader = null; ByteOrder byteOrder = (ByteOrder) stream.ReadByte(); // "Rewind" to let Read(BinaryReader) skip this byte // in collection and non-collection geometries. stream.Position = 0; try { if (byteOrder == ByteOrder.BigEndian) reader = new BEBinaryReader(stream); else reader = new BinaryReader(stream); return Read(reader); } finally { if (reader != null) reader.Close(); } }