Skip to content

Conversation

@CodyCBakerPhD
Copy link
Contributor

@CodyCBakerPhD CodyCBakerPhD commented Nov 28, 2022

fix #215

WIP while considering best way to handle certain issues, like the HDF5 plugin stuff. Sometimes it also causes a segmentation fault during the test runs.

EDIT: splintered MaxOne into #222 - still encountering various segmentation fault issues with MaxTwo that are likely to take a while to pin down and resolve. Putting this on the back burner for now.

Motivation

Adding a MaxOneRecordingInterface and MaxTwoRecordingInterface. They are two separate versions of the file format. The second one is like a nested version of the first but therefore has sufficiently different structure and input arguments to merit having a separate interface. In particular, the MaxTwo has multi-stream behavior much like Blackrock (though where Blackrock saves the different streams to different files, these are all combined into a single file) and thus following the precedence established there where the interface connects to only a single stream at a time (since each stream may actually contain different 'types' of data, like LFP or environmental electrodes) since and it is the users responsibility to identify which count for the RecordingInterface.

That's only the first difficulty. As indicated by the comments at https://github.com/NeuralEnsemble/python-neo/blob/master/neo/rawio/maxwellrawio.py#L214-L226, reading any data from these files requires setting up a specific HDF5 compression plugin ahead of time. Still thinking about the best way to handle that for the user (right now, assuming they set it up themselves ahead of time).

No rich metadata/annotations besides one little thing about the version of Maxwell used to run the recordings. No session start time.

Example output file: MaxOneRecordingInterface_maxone.zip and MaxTwoRecordingInterface_maxtwo-recording_name=rec0000-stream_name=well000.zip

How to test the behavior?

Test on GIN data added. Also spanning the entire set of recording session + stream IDs (SI only tests a single pair).

Checklist

  • Have you thoroughly read our Developer Guide?
  • Have you ensured the PR description clearly describes the problem and solutions?
  • Have you checked to ensure that there aren't other open or previously closed Pull Requests for the same change?
  • If this PR fixes an issue, is the first line of the PR description fix #XXX where XXX is the issue number?
  • Did you update the CHANGLOG.md file on your branch to describe your changes?

@CodyCBakerPhD CodyCBakerPhD mentioned this pull request Nov 28, 2022
5 tasks
@CodyCBakerPhD CodyCBakerPhD changed the title Add Maxwell [WIP]: Add MaxTwo Nov 28, 2022
@CodyCBakerPhD CodyCBakerPhD changed the title [WIP]: Add MaxTwo [WIP]: Add MaxTwoRecordingExtractor Nov 28, 2022
@CodyCBakerPhD CodyCBakerPhD mentioned this pull request Jan 4, 2023
5 tasks
@CodyCBakerPhD CodyCBakerPhD changed the title [WIP]: Add MaxTwoRecordingExtractor [WIP]: Add MaxTwoRecordingInterface Feb 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[New Format]: Maxwell

2 participants