Source code for nidaqmx.task.triggering._triggers

# Do not edit this file; it was automatically generated.

from nidaqmx.task.triggering._arm_start_trigger import ArmStartTrigger
from nidaqmx.task.triggering._handshake_trigger import HandshakeTrigger
from nidaqmx.task.triggering._pause_trigger import PauseTrigger
from nidaqmx.task.triggering._reference_trigger import ReferenceTrigger
from nidaqmx.task.triggering._start_trigger import StartTrigger
from nidaqmx.constants import (
    SyncType)


[docs] class Triggers: """ Represents the trigger configurations for a DAQmx task. """ def __init__(self, task_handle, interpreter): self._handle = task_handle self._interpreter = interpreter self._arm_start_trigger = ArmStartTrigger(self._handle, self._interpreter) self._handshake_trigger = HandshakeTrigger(self._handle, self._interpreter) self._pause_trigger = PauseTrigger(self._handle, self._interpreter) self._reference_trigger = ReferenceTrigger(self._handle, self._interpreter) self._start_trigger = StartTrigger(self._handle, self._interpreter) @property def arm_start_trigger(self) -> ArmStartTrigger: """ Gets the arm start trigger configurations for the task. """ return self._arm_start_trigger @property def handshake_trigger(self) -> HandshakeTrigger: """ Gets the handshake trigger configurations for the task. """ return self._handshake_trigger @property def pause_trigger(self) -> PauseTrigger: """ Gets the pause trigger configurations for the task. """ return self._pause_trigger @property def reference_trigger(self) -> ReferenceTrigger: """ Gets the reference trigger configurations for the task. """ return self._reference_trigger @property def start_trigger(self) -> StartTrigger: """ Gets the start trigger configurations for the task. """ return self._start_trigger @property def sync_type(self): """ :class:`nidaqmx.constants.SyncType`: Specifies the role of the device in a synchronized system. Setting this value to **SyncType.MASTER** or **SyncType.SLAVE** enables trigger skew correction. If you enable trigger skew correction, set this property to **SyncType.MASTER** on only one device, and set this property to **SyncType.SLAVE** on the other devices. """ val = self._interpreter.get_trig_attribute_int32(self._handle, 0x2f80) return SyncType(val) @sync_type.setter def sync_type(self, val): val = val.value self._interpreter.set_trig_attribute_int32(self._handle, 0x2f80, val) @sync_type.deleter def sync_type(self): self._interpreter.reset_trig_attribute(self._handle, 0x2f80)