/// <summary>
        /// Parses ASCII stream.
        /// </summary>
        public static IEnumerable <Chunk> Chunks(this Stream stream, long streamLengthInBytes, Token[] lineDefinition, ParseConfig config)
        {
            Chunk?lineParser(byte[] buffer, int count, double filterDist)
            => LineParsers.Custom(buffer, count, filterDist, lineDefinition);

            return(Parsing.AsciiLines(lineParser, stream, streamLengthInBytes, config));
        }
        /// <summary>
        /// Parses ASCII file.
        /// </summary>
        public static IEnumerable <Chunk> Chunks(string filename, Token[] lineDefinition, ParseConfig config)
        {
            Chunk?lineParser(byte[] buffer, int count, double filterDist)
            => LineParsers.Custom(buffer, count, filterDist, lineDefinition);

            return(Parsing.AsciiLines(lineParser, filename, config));
        }
 /// <summary>
 /// Parses .pts stream.
 /// </summary>
 public static IEnumerable <Chunk> Chunks(this Stream stream, long streamLengthInBytes, ParseConfig config)
 => Parsing.AsciiLines(LineParsers.XYZSRGB, stream, streamLengthInBytes, config);
 /// <summary>
 /// Parses .pts file.
 /// </summary>
 public static IEnumerable <Chunk> Chunks(string filename, ParseConfig config)
 => Parsing.AsciiLines(LineParsers.XYZSRGB, filename, config);