Skip to content

Extensions

Bill Chapman edited this page Jun 9, 2016 · 4 revisions

Extensions are additional packages (whether by us or another group) that use the CMBHOME toolbox to implement a specific analysis. These are separate, rather than integrated into the toolbox, in order to maintain the toolbox as a core set of tools that can be extended as needed.

Installing Extensions:

Extensions should come in a single folder titled the same as the extension name. Inside there will be a single +ExtensionName folder. Install this the same way that you did the CMBHOME base package (addpath /path/to/git/ExtensionName). See the extension documentation for implemented methods.

Designing Extensions:

If you would like to create an extension, please make sure to follow our package convention:

ExtensionName/+EnxtensionName/internalFiles

Such that once your package is added to the path, it would be called as ExtensionName.Method(arguments). When possible, please follow the additional guidelines:

  1. The end-user methods should accept a CMBHOME.Session object

  2. Assume that the session state (active_lfp/cel/epoch) have been set

  3. If plotting is implemented, it should use the current axes (to aid in visualization setups)

  4. Documentation: Please make the first comment line of each file a 1-line description, such that it shows up in the MATLAB doc function. Additional information about methods, input arguments, etc may follow as well. Please include citations to relevant papers when possible.

List of known analyses tools that use the CMBHOME setup:

Requests:

If you have an analysis tool that uses the CMBHOME framework that you would like listed here, please let us know. To do so, use the Issues feature of github, and start a feature request.

Clone this wiki locally