Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 8 additions & 53 deletions OpenEphys.Onix1/ConfigureNeuropixelsV1e.cs
Original file line number Diff line number Diff line change
Expand Up @@ -43,15 +43,13 @@ public ConfigureNeuropixelsV1e(ConfigureNeuropixelsV1e configureNeuropixelsV1e)
InvertPolarity = configureNeuropixelsV1e.InvertPolarity;
}

/// <summary>
/// Gets or sets the device enable state.
/// </summary>
/// <inheritdoc/>
/// <remarks>
/// If set to true, <see cref="NeuropixelsV1eData"/> will produce data. If set to false,
/// <see cref="NeuropixelsV1eData"/> will not produce data.
/// </remarks>
[Category(ConfigurationCategory)]
[Description("Specifies whether the Neuropixels data stream is enabled.")]
[Description("Specifies whether the NeuropixelsV1 device is enabled.")]
public bool Enable { get; set; } = true;

/// <summary>
Expand All @@ -61,74 +59,31 @@ public ConfigureNeuropixelsV1e(ConfigureNeuropixelsV1e configureNeuropixelsV1e)
/// If true, the headstage LED will turn on during data acquisition. If false, the LED will not turn on.
/// </remarks>
[Category(ConfigurationCategory)]
[Description("If true, the headstage LED will turn on during data acquisition. If false, the LED will not turn on.")]
[Description("Specifies whether the headstage LED will turn on during acquisition.")]
public bool EnableLed { get; set; } = true;

/// <summary>
/// Gets or sets a value determining if the polarity of the electrode voltages acquired by the probe
/// should be inverted.
/// </summary>
/// <remarks>
/// <para>
/// The analog channels on the probe ASIC have negative gain coefficients. This means that neural data
/// that is captured by the probe will be inverted compared to the physical signal that occurs at the
/// electrode: e.g. extracellular action potentials will tend to have positive deflections instead of
/// negative. Setting this property to true will apply a gain of -1 to neural data to undo this
/// effect.
/// </para>
/// </remarks>
/// <inheritdoc/>
[Category(ConfigurationCategory)]
[Description("Invert the polarity of the electrode voltages acquired by the probe.")]
public bool InvertPolarity { get; set; } = true;

/// <summary>
/// Gets or sets the path to the gain calibration file.
/// </summary>
/// <remarks>
/// <para>
/// Each probe is linked to a gain calibration file that contains gain adjustments determined by IMEC during
/// factory testing. Electrode voltages are scaled using these values to ensure they can be accurately compared
/// across probes. Therefore, using the correct gain calibration file is mandatory to create standardized recordings.
/// </para>
/// <para>
/// Calibration files are probe-specific and not interchangeable across probes. Calibration files must contain the
/// serial number of the corresponding probe on their first line of text. If you have lost track of a calibration
/// file for your probe, email IMEC at neuropixels.info@imec.be with the probe serial number to retrieve a new copy.
/// </para>
/// </remarks>
/// <inheritdoc/>
[FileNameFilter("Gain calibration files (*_gainCalValues.csv)|*_gainCalValues.csv")]
[Description("Path to the Neuropixels 1.0 gain calibration file.")]
[Editor("Bonsai.Design.OpenFileNameEditor, Bonsai.Design", DesignTypes.UITypeEditor)]
[Category(ConfigurationCategory)]
public string GainCalibrationFile { get; set; }

/// <summary>
/// Gets or sets the path to the ADC calibration file.
/// </summary>
/// <remarks>
/// <para>
/// Each probe must be provided with an ADC calibration file that contains probe-specific hardware settings that is
/// created by IMEC during factory calibration. These files are used to set internal bias currents, correct for ADC
/// nonlinearities, correct ADC-zero crossing non-monotonicities, etc. Using the correct calibration file is mandatory
/// for the probe to operate correctly.
/// </para>
/// <para>
/// Calibration files are probe-specific and not interchangeable across probes. Calibration files must contain the
/// serial number of the corresponding probe on their first line of text. If you have lost track of a calibration
/// file for your probe, email IMEC at neuropixels.info@imec.be with the probe serial number to retrieve a new copy.
/// </para>
/// </remarks>
/// <inheritdoc/>
[FileNameFilter("ADC calibration files (*_ADCCalibration.csv)|*_ADCCalibration.csv")]
[Description("Path to the Neuropixels 1.0 ADC calibration file.")]
[Editor("Bonsai.Design.OpenFileNameEditor, Bonsai.Design", DesignTypes.UITypeEditor)]
[Category(ConfigurationCategory)]
public string AdcCalibrationFile { get; set; }

/// <summary>
/// Gets or sets the NeuropixelsV1 probe configuration.
/// </summary>
/// <inheritdoc/>
[Category(ConfigurationCategory)]
[Description("Neuropixels 1.0e probe configuration")]
[Description("NeuropixelsV1 probe configuration")]
public NeuropixelsV1ProbeConfiguration ProbeConfiguration { get; set; } = new();

/// <summary>
Expand Down
59 changes: 7 additions & 52 deletions OpenEphys.Onix1/ConfigureNeuropixelsV1f.cs
Original file line number Diff line number Diff line change
Expand Up @@ -51,78 +51,33 @@ public ConfigureNeuropixelsV1f(ConfigureNeuropixelsV1f configureNeuropixelsV1f)
InvertPolarity = configureNeuropixelsV1f.InvertPolarity;
}

/// <summary>
/// Gets or sets the device enable state.
/// </summary>
/// <inheritdoc/>
/// <remarks>
/// If set to true, <see cref="NeuropixelsV1fData"/> will produce data. If set to false,
/// <see cref="NeuropixelsV1fData"/> will not produce data.
/// </remarks>
[Category(ConfigurationCategory)]
[Description("Specifies whether the Neuro data stream is enabled.")]
[Description("Specifies whether the NeuropixelsV1 device is enabled.")]
public bool Enable { get; set; } = true;

/// <summary>
/// Gets or sets a value determining if the polarity of the electrode voltages acquired by the probe
/// should be inverted.
/// </summary>
/// <remarks>
/// <para>
/// The analog channels on the probe ASIC have negative gain coefficients. This means that neural data
/// that is captured by the probe will be inverted compared to the physical signal that occurs at the
/// electrode: e.g. extracellular action potentials will tend to have positive deflections instead of
/// negative. Setting this property to true will apply a gain of -1 to neural data to undo this
/// effect.
/// </para>
/// </remarks>
/// <inheritdoc/>
[Category(ConfigurationCategory)]
[Description("Invert the polarity of the electrode voltages acquired by the probe.")]
public bool InvertPolarity { get; set; } = true;

/// <summary>
/// Gets or sets the NeuropixelsV1 probe configuration.
/// </summary>
/// <inheritdoc/>
[Category(ConfigurationCategory)]
[Description("Neuropixels 1.0e probe configuration.")]
[Description("NeuropixelsV1 probe configuration.")]
public NeuropixelsV1ProbeConfiguration ProbeConfiguration { get; set; } = new();

/// <summary>
/// Gets or sets the path to the gain calibration file.
/// </summary>
/// <remarks>
/// <para>
/// Each probe is linked to a gain calibration file that contains gain adjustments determined by IMEC during
/// factory testing. Electrode voltages are scaled using these values to ensure they can be accurately compared
/// across probes. Therefore, using the correct gain calibration file is mandatory to create standardized recordings.
/// </para>
/// <para>
/// Calibration files are probe-specific and not interchangeable across probes. Calibration files must contain the
/// serial number of the corresponding probe on their first line of text. If you have lost track of a calibration
/// file for your probe, email IMEC at neuropixels.info@imec.be with the probe serial number to retrieve a new copy.
/// </para>
/// </remarks>
/// <inheritdoc/>
[FileNameFilter("Gain calibration files (*_gainCalValues.csv)|*_gainCalValues.csv")]
[Description("Path to the Neuropixels 1.0 gain calibration file.")]
[Editor("Bonsai.Design.OpenFileNameEditor, Bonsai.Design", DesignTypes.UITypeEditor)]
[Category(ConfigurationCategory)]
public string GainCalibrationFile { get; set; }

/// <summary>
/// Gets or sets the path to the ADC calibration file.
/// </summary>
/// <remarks>
/// <para>
/// Each probe must be provided with an ADC calibration file that contains probe-specific hardware settings that is
/// created by IMEC during factory calibration. These files are used to set internal bias currents, correct for ADC
/// nonlinearities, correct ADC-zero crossing non-monotonicities, etc. Using the correct calibration file is mandatory
/// for the probe to operate correctly.
/// </para>
/// <para>
/// Calibration files are probe-specific and not interchangeable across probes. Calibration files must contain the
/// serial number of the corresponding probe on their first line of text. If you have lost track of a calibration
/// file for your probe, email IMEC at neuropixels.info@imec.be with the probe serial number to retrieve a new copy.
/// </para>
/// </remarks>
/// <inheritdoc/>
[FileNameFilter("ADC calibration files (*_ADCCalibration.csv)|*_ADCCalibration.csv")]
[Description("Path to the Neuropixels 1.0 ADC calibration file.")]
[Editor("Bonsai.Design.OpenFileNameEditor, Bonsai.Design", DesignTypes.UITypeEditor)]
Expand Down
54 changes: 3 additions & 51 deletions OpenEphys.Onix1/ConfigureNeuropixelsV2e.cs
Original file line number Diff line number Diff line change
Expand Up @@ -47,79 +47,31 @@ public ConfigureNeuropixelsV2e(ConfigureNeuropixelsV2e configureNode)
[Description("Specifies whether the NeuropixelsV2 device is enabled.")]
public bool Enable { get; set; } = true;

/// <summary>
/// Gets or sets a value determining if the polarity of the electrode voltages acquired by the probe
/// should be inverted.
/// </summary>
/// <remarks>
/// <para>
/// The analog channels on the probe ASIC have negative gain coefficients. This means that neural data
/// that is captured by the probe will be inverted compared to the physical signal that occurs at the
/// electrode: e.g. extracellular action potentials will tend to have positive deflections instead of
/// negative. Setting this property to true will apply a gain of -1 to neural data to undo this
/// effect.
/// </para>
/// </remarks>
/// <inheritdoc/>
[Category(ConfigurationCategory)]
[Description("Invert the polarity of the electrode voltages acquired by the probe.")]
public bool InvertPolarity { get; set; } = true;

/// <inheritdoc/>
/// <remarks>
/// Configuration is accomplished using a GUI to aid in channel selection and relevant configuration properties.
/// To open a probe configuration GUI, select the ellipses next the <see cref="ProbeConfigurationA"/> variable
/// in the property pane, or double-click <see cref="ConfigureHeadstageNeuropixelsV2e"/> to configure both
/// probes and the <see cref="ConfigurePolledBno055"/> simultaneously.
/// </remarks>
[Category(ConfigurationCategory)]
[Description("Probe A electrode configuration.")]
[Description("Probe A configuration.")]
[Editor("OpenEphys.Onix1.Design.NeuropixelsV2eProbeConfigurationEditor, OpenEphys.Onix1.Design", typeof(UITypeEditor))]
public NeuropixelsV2QuadShankProbeConfiguration ProbeConfigurationA { get; set; } = new(NeuropixelsV2Probe.ProbeA);

/// <inheritdoc/>
/// <remarks>
/// <para>
/// Each probe is linked to a gain calibration file that contains gain adjustments determined by IMEC during
/// factory testing. Electrode voltages are scaled using these values to ensure they can be accurately compared
/// across probes. Therefore, using the correct gain calibration file is mandatory to create standardized recordings.
/// </para>
/// <para>
/// Calibration files are probe-specific and not interchangeable across probes. Calibration files must contain the
/// serial number of the corresponding probe on their first line of text. If you have lost track of a calibration
/// file for your probe, email IMEC at neuropixels.info@imec.be with the probe serial number to retrieve a new copy.
/// </para>
/// </remarks>
[Category(ConfigurationCategory)]
[FileNameFilter("Gain calibration files (*_gainCalValues.csv)|*_gainCalValues.csv")]
[Description("Path to the gain calibration file for probe A.")]
[Editor("Bonsai.Design.OpenFileNameEditor, Bonsai.Design", DesignTypes.UITypeEditor)]
public string GainCalibrationFileA { get; set; }

/// <inheritdoc/>
/// <remarks>
/// Configuration is accomplished using a GUI to aid in channel selection and relevant configuration properties.
/// To open a probe configuration GUI, select the ellipses next the <see cref="ProbeConfigurationB"/> variable
/// in the property pane, or double-click <see cref="ConfigureHeadstageNeuropixelsV2e"/> to configure both
/// probes and the <see cref="ConfigurePolledBno055"/> simultaneously.
/// </remarks>
[Category(ConfigurationCategory)]
[Description("Probe B electrode configuration.")]
[Description("Probe B configuration.")]
[Editor("OpenEphys.Onix1.Design.NeuropixelsV2eProbeConfigurationEditor, OpenEphys.Onix1.Design", typeof(UITypeEditor))]
public NeuropixelsV2QuadShankProbeConfiguration ProbeConfigurationB { get; set; } = new(NeuropixelsV2Probe.ProbeB);

/// <inheritdoc/>
/// <remarks>
/// <para>
/// Each probe is linked to a gain calibration file that contains gain adjustments determined by IMEC during
/// factory testing. Electrode voltages are scaled using these values to ensure they can be accurately compared
/// across probes. Therefore, using the correct gain calibration file is mandatory to create standardized recordings.
/// </para>
/// <para>
/// Calibration files are probe-specific and not interchangeable across probes. Calibration files must contain the
/// serial number of the corresponding probe on their first line of text. If you have lost track of a calibration
/// file for your probe, email IMEC at neuropixels.info@imec.be with the probe serial number to retrieve a new copy.
/// </para>
/// </remarks>
[Category(ConfigurationCategory)]
[FileNameFilter("Gain calibration files (*_gainCalValues.csv)|*_gainCalValues.csv")]
[Description("Path to the gain calibration file for probe B.")]
Expand Down
Loading
Loading