Source code for pynwb.legacy.io.file


from pynwb.file import NWBFile

from .. import ObjectMapper, register_map


[docs] @register_map(NWBFile) class NWBFileMap(ObjectMapper): def __init__(self, spec): super(NWBFileMap, self).__init__(spec) raw_ts_spec = self.spec.get_group('acquisition').get_neurodata_type('NWBDataInterface') self.map_spec('acquisition', raw_ts_spec) stimulus_spec = self.spec.get_group('stimulus') presentation_ts_spec = stimulus_spec.get_group('presentation').get_neurodata_type('TimeSeries') self.map_spec('stimulus', presentation_ts_spec) stimulus_ts_spec = stimulus_spec.get_group('templates').get_neurodata_type('TimeSeries') self.map_spec('stimulus_template', stimulus_ts_spec) epochs_spec = self.spec.get_group('epochs') self.map_spec('epochs', epochs_spec.get_neurodata_type('Epoch')) general_spec = self.spec.get_group('general') self.map_spec( 'ic_electrodes', general_spec.get_group('intracellular_ephys').get_neurodata_type('IntracellularElectrode')) self.map_spec( 'ec_electrodes', general_spec.get_group('extracellular_ephys').get_neurodata_type('ElectrodeGroup')) self.map_spec( 'optogenetic_sites', general_spec.get_group('optogenetics').get_neurodata_type('OptogeneticStimulusSite')) self.map_spec( 'imaging_planes', general_spec.get_group('optophysiology').get_neurodata_type('ImagingPlane')) self.map_spec('modules', self.spec.get_group('processing').get_neurodata_type('ProcessingModule')) self.unmap(general_spec.get_dataset('stimulus'))
[docs] @ObjectMapper.constructor_arg('file_name') def name(self, builder): return builder.name