freesurfer-parser

0.0.2 • Public • Published

freesurfer-parser

Codeship Status for MRN-Code/freesurfer-parser

Parse a freesurfer volume file/string. By default, this will parse a string, setting the first line as the header. Any unexpected properties will be removed by default as well.

Usage

fileContent = fs.readFileSync('/path/to/file.txt').toString();
FreeSurfer = require('freesurfer-parser');
 
freeSurfer = new FreeSurfer({string: fileContent});
 
console.log(freeSurfer);

Constructor Methods

new FreeSurfer(options)

  • @param {object} options may have the following keys:

    • values: Initial values to set on the returned object. defaults to null
    • string: A string from which to parse values. defaults to null
    • headerCount: The number of lines in string that contain header data. defaults to 0
    • removeInvalidFields: Whether to strip invalid fields after parsing. _defaults to true
    • validate: Whether to validate all fields after parsing. defaults to true
  • @return {object} FreeSurfer instance

FreeSufer.setEol(value)

  • @param {string} value to be used as the line-break character when parsing. defaults to \n
  • @returns {string} the previous value used as line-break

FreeSufer.setDelimiter(value)

  • @param {string} value to be used as the delimiting character between ROI and measured volume. defaults to /\s+/ (whitespace)
  • @returns {string} the previous value

FreeSufer.setDefaultHeaderCount(value)

  • @param {int} value to be used when assigning header rows during parsing. defaults to 1
  • @returns {int} the previous value

Instance Methods

setFromString(string, headerCount)

  • @param {string} string to be parsed

  • @param {number} headerCount is the number of header lines to expect. The header lines will be assigned to the 'header' property of the instance. defaults to 0

  • @return {object} self

This method merges the key/value pairs parsed from the string with the current instance.

trimInvalidFields()

  • @return {object} self

Remove any properties whose keys are not in the validFields of the schema (see lib/schema.js)

validate()

  • @return {object} self

Assert that the current object has only the requisite properties. Throws an error if assertion fails.

rando

  • a dummy FreeSurfer generator exists in scripts/generator.js. use it if you so desire.

Contributing

Please submit any changes to this repo (including additions and subtractions from the lint config files) as pull requests.

TODO

  • TODO: add option to create from readStream

Readme

Keywords

none

Package Sidebar

Install

npm i freesurfer-parser

Weekly Downloads

1

Version

0.0.2

License

MIT

Last publish

Collaborators

  • cdaringe
  • rsskmr
  • swashcap