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;FreeSurfer = ; freeSurfer = string: fileContent; console;
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 to0
- removeInvalidFields: Whether to strip invalid fields after parsing.
_defaults to
true
- validate: Whether to validate all fields after parsing. defaults to true
- values: Initial values to set on the returned object. defaults to
-
@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