code: def read_raw_nsx(
      input_fname,
      stim_channel=True,
      eog=None,
      misc=None,
      preload=False,
      *,
      verbose=None,
  ) -> "RawNSX":
      """Reader function for NSx (Blackrock Microsystems) files.
  
      Parameters
      ----------
      input_fname : str
          Path to the NSx file.
      stim_channel : ``'auto'`` | str | list of str | int | list of int
          Defaults to ``'auto'``, which means that channels named ``'status'`` or
          ``'trigger'`` (case insensitive) are set to STIM. If str (or list of
          str), all channels matching the name(s) are set to STIM. If int (or
          list of ints), channels corresponding to the indices are set to STIM.
      eog : list or tuple
          Names of channels or list of indices that should be designated EOG
          channels. Values should correspond to the electrodes in the file.
          Default is None.
      misc : list or tuple
          Names of channels or list of indices that should be designated MISC
          channels. Values should correspond to the electrodes in the file.
          Default is None.
      %(preload)s
      %(verbose)s
  
      Returns
      -------
      raw : instance of RawEDF
          The raw instance.
          See :class:`mne.io.Raw` for documentation of attributes and methods.
  
      Notes
      -----
      NSx files with id (= NEURALSG), i.e., version 2.1 is currently not
      supported.
  
      If channels named 'status' or 'trigger' are present, they are considered as
      STIM channels by default. Use func:`mne.find_events` to parse events
      encoded in such analog stim channels.
      """
      input_fname = os.path.abspath(input_fname)
      ext = os.path.splitext(input_fname)[1][1:].lower()
      if ext[:2] != "ns":
          raise NotImplementedError(
              f"Only NSx files are supported, got {ext}."
          )
      return RawNSX(
          input_fname,
          stim_channel,
          eog,
          misc,
          preload=preload,
          verbose=verbose,
      )
  
file_path: mne-python/mne/io/nsx/nsx.py
imports: import os
  from datetime import datetime, timezone
  import numpy
  from ..._fiff.constants import FIFF
  from ..._fiff.meas_info import _empty_info
  from ..._fiff.utils import _file_size, _read_segments_file
  from ...annotations import Annotations
  from ...utils import fill_doc, logger, warn
  from ..base import BaseRaw, _get_scaling
label_desc: Use image node_id 1 for calling a global function with example usage: read_raw_nsx(input_fname, stim_channel, eog, misc, preload) and returns: RawNSX