Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

examples: Don't assume array parameters are implemented as lists #924

Merged
merged 4 commits into from
Sep 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions examples/niscope_acquire_waveform/measurement.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import sys
import threading
import time
from typing import List, Tuple
from typing import List, Sequence, Tuple

import click
import grpc
Expand Down Expand Up @@ -64,7 +64,7 @@
@measurement_service.output("waveform2", nims.DataType.DoubleArray1D)
@measurement_service.output("waveform3", nims.DataType.DoubleArray1D)
def measure(
measurement_pins: List[str],
measurement_pins: Sequence[str],
vertical_range: float,
vertical_coupling: str,
input_impedance: float,
Expand All @@ -90,7 +90,7 @@ def measure(
measurement_service.context.add_cancel_callback(cancellation_event.set)

with measurement_service.context.reserve_session(
measurement_pins + [trigger_pin]
list(measurement_pins) + [trigger_pin]
) as reservation:
with reservation.initialize_niscope_session() as session_info:
# Use connections to map pin names to channel names. This sets the
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
"""NI-DAQmx measurement plug-in test service."""

import pathlib
from typing import List, Sequence, Tuple
from typing import Iterable, List, Sequence, Tuple

import nidaqmx

Expand All @@ -27,7 +27,7 @@
@measurement_service.output("connected_channels", nims.DataType.StringArray1D)
@measurement_service.output("voltage_values", nims.DataType.DoubleArray1D)
def measure(
pin_names: List[str],
pin_names: Iterable[str],
multi_session: bool,
) -> Tuple[List[str], List[str], List[str], List[str], List[float]]:
"""NI-DAQmx measurement plug-in test service."""
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import pathlib
from contextlib import ExitStack
from typing import Iterable, Sequence, Tuple
from typing import Iterable, List, Sequence, Tuple

import hightime
import nidcpower
Expand Down Expand Up @@ -64,14 +64,14 @@ def measure(
[session_info.resource_name],
[session_info.channel_list],
[connection.channel_name],
[list(voltage_measurements)[0]],
[list(current_measurements)[0]],
[voltage_measurements[0]],
[current_measurements[0]],
)


def _source_measure_dc_voltage(
connections: Sequence[nims.session_management.TypedConnection[nidcpower.Session]],
) -> Tuple[Iterable[float], Iterable[float]]:
) -> Tuple[List[float], List[float]]:
for connection in connections:
channel = connection.session.channels[connection.channel_name]
channel.source_mode = nidcpower.SourceMode.SINGLE_POINT
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import pathlib
from itertools import groupby
from typing import Iterable, Sequence, Tuple, Union
from typing import Iterable, Sequence, Tuple, Union, List

import nidigital

Expand Down Expand Up @@ -35,7 +35,7 @@ def measure(
pin_names: Iterable[str],
multi_session: bool,
) -> Tuple[
Iterable[str], Iterable[str], Iterable[str], Iterable[str], Iterable[str], Iterable[str]
Iterable[str], Iterable[str], Iterable[str], Iterable[str], Iterable[int], Iterable[int]
]:
"""NI-Digital measurement plug-in test service."""
if multi_session:
Expand All @@ -56,8 +56,8 @@ def measure(
", ".join(conn.channel_name for conn in conns)
for conns in connections_by_session
],
list(passing_sites),
list(failing_sites),
passing_sites,
failing_sites,
)
else:
with measurement_service.context.reserve_session(pin_names) as reservation:
Expand All @@ -78,7 +78,7 @@ def measure(

def _burst_spi_pattern(
session_infos: Sequence[TypedSessionInformation[nidigital.Session]],
) -> Tuple:
) -> Tuple[List[int], List[int]]:
specifications_file_path = "Specifications.specs"
levels_file_path = "PinLevels.digilevels"
timing_file_path = "Timing.digitiming"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import math
import pathlib
from typing import List, Sequence, Tuple
from typing import Iterable, List, Sequence, Tuple

import nidmm

Expand All @@ -29,7 +29,7 @@
@measurement_service.output("signals_out_of_range", nims.DataType.BooleanArray1D)
@measurement_service.output("absolute_resolutions", nims.DataType.DoubleArray1D)
def measure(
pin_names: List[str],
pin_names: Iterable[str],
multi_session: bool,
) -> Tuple[List[str], List[str], List[str], List[str], List[bool], List[float]]:
"""NI-DMM measurement plug-in test service."""
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
"""Contains utility functions to test loopback measurement service. """

import pathlib
from typing import Tuple

import ni_measurement_plugin_sdk_service as nims

Expand All @@ -17,8 +18,8 @@
@measurement_service.register_measurement
@measurement_service.configuration("Float In", nims.DataType.Float, 0.06)
@measurement_service.output("Float out", nims.DataType.Float)
def measure(float_input):
def measure(float_input: float) -> Tuple[float]:
"""Loopback measurement on the float input."""
float_output = float_input

return float_output
return (float_output,)
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
"""Contains utility functions to test loopback measurement service. """

import pathlib
from typing import Tuple

import ni_measurement_plugin_sdk_service as nims

Expand All @@ -17,8 +18,8 @@
@measurement_service.register_measurement
@measurement_service.configuration("Float In", nims.DataType.Float, 0.06)
@measurement_service.output("Float out", nims.DataType.Float)
def measure(float_input):
def measure(float_input: float) -> Tuple[float]:
"""Loopback measurement on the float input."""
float_output = float_input

return float_output
return (float_output,)
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
"""Contains utility functions to test loopback measurement service. """

import pathlib
from typing import Tuple

import ni_measurement_plugin_sdk_service as nims

Expand All @@ -17,8 +18,8 @@
@measurement_service.register_measurement
@measurement_service.configuration("Float In", nims.DataType.Float, 0.06)
@measurement_service.output("Float out", nims.DataType.Float)
def measure(float_input):
def measure(float_input: float) -> Tuple[float]:
"""Loopback measurement on the float input."""
float_output = float_input

return float_output
return (float_output,)