Struct sdc::reader::Reader [] [src]

pub struct Reader<R: Read> {
    // some fields omitted
}

An object for readings .sdc points.

We don't just read them all into memory right away since .sdc files can be quite big.

Methods

impl Reader<BufReader<File>>

fn from_path<P: AsRef<Path>>(path: P) -> Result<Reader<BufReader<File>>>

Creates a new reader for a path.

Examples

use sdc::reader::Reader;
let reader = Reader::from_path("data/4-points-5.0.sdc").unwrap();

impl<R: Read> Reader<R>

fn new(reader: R) -> Result<Reader<R>>

Creates a new reader, consuimg a Read.

Examples

use std::fs::File;
use sdc::reader::Reader;
let file = File::open("data/4-points-5.0.sdc").unwrap();
let reader = Reader::new(file);

fn next_point(&mut self) -> Result<Option<Point>>

Reads the next point from the underlying Read.

Examples

use sdc::reader::Reader;
let mut reader = Reader::from_path("data/4-points-5.0.sdc").unwrap();
let point = reader.next_point();

fn version(&self) -> Version

Returns this file's version as a (u16, u16).

Examples

use sdc::reader::{Reader, Version};
let reader = Reader::from_path("data/4-points-5.0.sdc").unwrap();
let Version { major, minor } = reader.version();

fn header_information_as_str(&self) -> Result<&str>

Returns this file's header information, or an error if it is not valid ASCII.

Examples

use sdc::reader::Reader;
let reader = Reader::from_path("data/4-points-5.0.sdc").unwrap();
let header_information = reader.header_information_as_str();

Trait Implementations

impl<R: Read> IntoIterator for Reader<R>

type Item = Point

type IntoIter = PointIterator<R>

fn into_iter(self) -> Self::IntoIter

Derived Implementations

impl<R: Debug + Read> Debug for Reader<R>

fn fmt(&self, __arg_0: &mut Formatter) -> Result