class_docstr: Parser for Elekta data acquisition settings.
  
  This class parses parameters (e.g. events and averaging categories) that
  are defined in the Elekta TRIUX/VectorView data acquisition software (DACQ)
  and stored in ``info['acq_pars']``. It can be used to reaverage raw data
  according to DACQ settings and modify original averaging settings if
  necessary.
  
  Parameters
  ----------
  %(info_not_none)s This is where the DACQ parameters will be taken from.
  
  Attributes
  ----------
  categories : list
      List of averaging categories marked active in DACQ.
  events : list
      List of events that are in use (referenced by some averaging category).
  reject : dict
      Rejection criteria from DACQ that can be used with mne.Epochs.
      Note that mne does not support all DACQ rejection criteria
      (e.g. spike, slope).
  flat : dict
      Flatness rejection criteria from DACQ that can be used with mne.Epochs.
  acq_dict : dict
      All DACQ parameters.
  
  See Also
  --------
  mne.io.Raw.acqparser : Access the parser through a Raw attribute.
  
  Notes
  -----
  Any averaging category (also non-active ones) can be accessed by indexing
  as ``acqparserfif['category_name']``.
docstr: Create list of DACQ events based on mne trigger transitions list.
  
  mne_events is typically given by mne.find_events (use consecutive=True
  to get all transitions). Output consists of rows in the form
  [t, 0, event_codes] where t is time in samples and event_codes is all
  DACQ events compatible with the transition, bitwise ORed together:
  e.g. [t1, 0, 5] means that events 1 and 3 occurred at time t1,
  as 2**(1 - 1) + 2**(3 - 1) = 5.
docstr_tok: ["Create","list","of","DACQ","events","based","on","mne","trigger","transitions","list",".","mne_events","is","typically","given","by","mne.find_events","(","use","consecutive=True","to","get","all","transitions",")",".","Output","consists","of","rows","in","the","form","[","t",",","0",",","event_codes","]","where","t","is","time","in","samples","and","event_codes","is","all","DACQ","events","compatible","with","the","transition",",","bitwise","ORed","together",":","e.g",".","[","t1",",","0",",","5","]","means","that","events","1","and","3","occurred","at","time","t1",",","as","2","*","*","(","1","-","1",")","+","2","*","*","(","3","-","1",")","=","5","."]
code: def _events_mne_to_dacq(self, mne_events):
      """Create list of DACQ events based on mne trigger transitions list.
  
      mne_events is typically given by mne.find_events (use consecutive=True
      to get all transitions). Output consists of rows in the form
      [t, 0, event_codes] where t is time in samples and event_codes is all
      DACQ events compatible with the transition, bitwise ORed together:
      e.g. [t1, 0, 5] means that events 1 and 3 occurred at time t1,
      as 2**(1 - 1) + 2**(3 - 1) = 5.
      """
      events_ = mne_events.copy()
      events_[:, 1:3] = 0
      for n, ev in self._events.items():
          if ev["in_use"]:
              pre_ok = (
                  np.bitwise_and(ev["oldmask"], mne_events[:, 1])
                  == ev["oldbits"]
              )
              post_ok = (
                  np.bitwise_and(ev["newmask"], mne_events[:, 2])
                  == ev["newbits"]
              )
              ok_ind = np.where(pre_ok & post_ok)
              events_[ok_ind, 2] |= 1 << (n - 1)
      return events_
  
imports: from collections.abc import Sequence
  from pathlib import Path
  import numpy
  from ._fiff.constants import FIFF
  from ._fiff.open import fiff_open
  from ._fiff.pick import pick_channels
  from ._fiff.tag import read_tag
  from ._fiff.tree import dir_tree_find
  from ._fiff.write import end_block, start_and_end_file, start_block, write_int
  from .utils import _check_fname, _check_integer_or_list, _check_on_missing, _check_option, _get_stim_channel, _on_missing, _pl, _validate_type, check_fname, fill_doc, logger, verbose, warn
label_desc: Use image node_id 8 for calling the AcqParserFIF obj's underlying member method code with example usage: obj._events_mne_to_dacq(mne_events) and returns: events_