Source code for pynwb.device

from hdmf.utils import docval, popargs, AllowPositional

from . import register_class, CORE_NAMESPACE
from .core import NWBContainer

__all__ = ['Device']

[docs] @register_class('Device', CORE_NAMESPACE) class Device(NWBContainer): """ Metadata about a data acquisition device, e.g., recording system, electrode, microscope. """ __nwbfields__ = ( 'name', 'description', 'manufacturer', 'model_number', 'model_name', 'serial_number', ) @docval( {'name': 'name', 'type': str, 'doc': 'the name of this device'}, {'name': 'description', 'type': str, 'doc': ("Description of the device as free-form text. If there is any software/firmware associated " "with the device, the names and versions of those can be added to `NWBFile.was_generated_by`."), 'default': None}, {'name': 'manufacturer', 'type': str, 'doc': ("The name of the manufacturer of the device, e.g., Imec, Plexon, Thorlabs."), 'default': None}, {'name': 'model_number', 'type': str, 'doc': ('The model number (or part/product number) of the device, e.g., PRB_1_4_0480_1, ' 'PLX-VP-32-15SE(75)-(260-80)(460-10)-300-(1)CON/32m-V, BERGAMO.'), 'default': None}, {'name': 'model_name', 'type': str, 'doc': ('The model name of the device, e.g., Neuropixels 1.0, V-Probe, Bergamo III.'), 'default': None}, {'name': 'serial_number', 'type': str, 'doc': 'The serial number of the device.', 'default': None}, allow_positional=AllowPositional.WARNING, ) def __init__(self, **kwargs): description, manufacturer, model_number, model_name, serial_number = popargs( 'description', 'manufacturer', 'model_number', 'model_name', 'serial_number', kwargs) super().__init__(**kwargs) self.description = description self.manufacturer = manufacturer self.model_number = model_number self.model_name = model_name self.serial_number = serial_number