...
For writing continuous data, we use the NWB ElectricalSeries:
/acquisition/timeseries/recording<R>/continuous/processor<P>/recording<R>
./ancestry: ['TimeSeries', 'ElectricalSeries'] (text array attr)
...
./neurodata_type: 'TimeSeries' (text attr)
./source: Processor name + <P> (text attr)
./help: 'Stores acquired voltage data from extracellular recordings' (text attr)
...
For writing spike data, we use the NWB SpikeEventSeries:
/acquisition/timeseries/recording<R>/spikes/electrode<E>/recording<R>
./ancestry: ['TimeSeries', 'SpikeEventSeries'] (text array attr)
...
./neurodata_type: 'TimeSeries' (text attr)
./source: Processor name + <P> (text attr)
./help: 'Snapshorts of spike events from data' (attr, text)
...
For writing messages, we use the NWB AnnotationSeries:
/acquisition/timeseries/recording<R>/events/text<T>/recording<R>
./ancestry: ['TimeSeries', 'AnnotationSeries'] (text array attr)
...
./neurodata_type: 'TimeSeries' (text attr)
./source: Processor name + <P> (text attr)
./help: 'Time-stamped annotations about an experiment' (attr, text)
...
For writing TTL events, we use a custom derived version of the NWB IntervalSeries called TTLSeries:
/acquisition/timeseries/recording<R>/events/ttl<T>/recording<R>
./ancestry: ['TimeSeries', 'IntervalSeries', 'TTLSeries'] (text array attr)
...
./neurodata_type: 'TimeSeries' (text attr)
./source: Processor name + <P> (text attr)
./help: 'Stores the start and stop times for TTL events' (attr, text)
...
For writing Binary events, we use a custom derived version of the NWB Timeseries called BinarySeries:
/acquisition/timeseries/recording<R>/events/binary<T>/recording<R>
./ancestry: ['TimeSeries', 'BinarySeries'] (text array attr)
...
./neurodata_type: 'TimeSeries' (text attr)
./source: Processor name + <P> (text attr)
./help: 'Stores arbitrary binary data' (attr, text)
...