Skip to content

Commit 3a5d002

Browse files
authored
Updating MeasurementService __init__ to parse .serviceconfig. (#219)
* Updating MeasurementService __init__ to parse .serviceconfig. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Fixing some issues raised by build. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Fixing more style issues. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Adding service_class optional parameter and other small fixes. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Fixing issue and using loopless approach. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Running styleguide fix. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Replacing List[str] with List[Path] Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Importing Path from pathlib. Trying to fix build errors. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Using filter. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Removing filter. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Updating the rest of the examples. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Updating testassets example. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Updating mako template. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Fixing build issues. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Fixing variable name. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Renaming variable from parent_directory to service_directory Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Change serviceconfig path paramter from str to Path. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Fixing tests. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Fixing style issues and warnings. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Making assets variable name make sense. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Fixing example render to match expected result from test. Signed-off-by: Chris Delpire <chris.delpire@ni.com> * Adding back extra newline to template. Signed-off-by: Chris Delpire <chris.delpire@ni.com> --------- Signed-off-by: Chris Delpire <chris.delpire@ni.com>
1 parent 0684ead commit 3a5d002

14 files changed

Lines changed: 121 additions & 129 deletions

File tree

examples/nidaqmx_analog_input/measurement.py

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,13 @@
99

1010
import ni_measurementlink_service as nims
1111

12-
measurement_info = nims.MeasurementInfo(
13-
display_name="NI-DAQmx Analog Input (Py)",
12+
service_directory = pathlib.Path(__file__).resolve().parent
13+
measurement_service = nims.MeasurementService(
14+
service_config_path=service_directory / "NIDAQmxAnalogInput.serviceconfig",
1415
version="0.1.0.0",
15-
ui_file_paths=[pathlib.Path(__file__).resolve().parent / "NIDAQmxAnalogInput.measui"],
16+
ui_file_paths=[service_directory / "NIDAQmxAnalogInput.measui"],
1617
)
1718

18-
service_info = nims.ServiceInfo(
19-
service_class="ni.examples.NIDAQmxAnalogInput_Python",
20-
description_url="",
21-
)
22-
23-
measurement_service = nims.MeasurementService(measurement_info, service_info)
24-
2519

2620
@measurement_service.register_measurement
2721
@measurement_service.configuration("physical_channel", nims.DataType.String, "Dev1/ai0")

examples/nidcpower_source_dc_voltage/measurement.py

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -19,21 +19,15 @@
1919
NIDCPOWER_WAIT_FOR_EVENT_TIMEOUT_ERROR_CODE = -1074116059
2020
NIDCPOWER_TIMEOUT_EXCEEDED_ERROR_CODE = -1074097933
2121

22-
measurement_info = nims.MeasurementInfo(
23-
display_name="NI-DCPower Source DC Voltage (Py)",
22+
service_directory = pathlib.Path(__file__).resolve().parent
23+
measurement_service = nims.MeasurementService(
24+
service_config_path=service_directory / "NIDCPowerSourceDCVoltage.serviceconfig",
2425
version="0.1.0.0",
2526
ui_file_paths=[
26-
pathlib.Path(__file__).resolve().parent / "NIDCPowerSourceDCVoltage.measui",
27-
pathlib.Path(__file__).resolve().parent / "NIDCPowerSourceDCVoltageUI.vi",
27+
service_directory / "NIDCPowerSourceDCVoltage.measui",
28+
service_directory / "NIDCPowerSourceDCVoltageUI.vi",
2829
],
2930
)
30-
31-
service_info = nims.ServiceInfo(
32-
service_class="ni.examples.NIDCPowerSourceDCVoltage_Python",
33-
description_url="",
34-
)
35-
36-
measurement_service = nims.MeasurementService(measurement_info, service_info)
3731
service_options = ServiceOptions()
3832

3933

examples/nidmm_measurement/measurement.py

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,18 +14,12 @@
1414

1515
import ni_measurementlink_service as nims
1616

17-
measurement_info = nims.MeasurementInfo(
18-
display_name="NI-DMM Measurement (Py)",
17+
service_directory = pathlib.Path(__file__).resolve().parent
18+
measurement_service = nims.MeasurementService(
19+
service_config_path=service_directory / "NIDmmMeasurement.serviceconfig",
1920
version="0.1.0.0",
20-
ui_file_paths=[pathlib.Path(__file__).resolve().parent / "NIDmmMeasurement.measui"],
21+
ui_file_paths=[service_directory / "NIDmmMeasurement.measui"],
2122
)
22-
23-
service_info = nims.ServiceInfo(
24-
service_class="ni.examples.NIDmmMeasurement_Python",
25-
description_url="",
26-
)
27-
28-
measurement_service = nims.MeasurementService(measurement_info, service_info)
2923
service_options = ServiceOptions()
3024

3125
FUNCTION_TO_ENUM = {

examples/nifgen_standard_function/measurement.py

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,18 +18,12 @@
1818
NIFGEN_OPERATION_TIMED_OUT_ERROR_CODE = -1074098044
1919
NIFGEN_MAX_TIME_EXCEEDED_ERROR_CODE = -1074118637
2020

21-
measurement_info = nims.MeasurementInfo(
22-
display_name="NI-FGEN Standard Function (Py)",
21+
service_directory = pathlib.Path(__file__).resolve().parent
22+
measurement_service = nims.MeasurementService(
23+
service_config_path=service_directory / "NIFgenStandardFunction.serviceconfig",
2324
version="0.1.0.0",
24-
ui_file_paths=[pathlib.Path(__file__).resolve().parent / "NIFgenStandardFunction.measui"],
25+
ui_file_paths=[service_directory / "NIFgenStandardFunction.measui"],
2526
)
26-
27-
service_info = nims.ServiceInfo(
28-
service_class="ni.examples.NIFgenStandardFunction_Python",
29-
description_url="",
30-
)
31-
32-
measurement_service = nims.MeasurementService(measurement_info, service_info)
3327
service_options = ServiceOptions()
3428

3529
WAVEFORM_TYPE_TO_ENUM = {

examples/niscope_acquire_waveform/measurement.py

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,18 +14,12 @@
1414

1515
import ni_measurementlink_service as nims
1616

17-
measurement_info = nims.MeasurementInfo(
18-
display_name="NI-SCOPE Acquire Waveform (Py)",
17+
service_directory = pathlib.Path(__file__).resolve().parent
18+
measurement_service = nims.MeasurementService(
19+
service_config_path=service_directory / "NIScopeAcquireWaveform.serviceconfig",
1920
version="0.1.0.0",
20-
ui_file_paths=[pathlib.Path(__file__).resolve().parent / "NIScopeAcquireWaveform.measui"],
21+
ui_file_paths=[service_directory / "NIScopeAcquireWaveform.measui"],
2122
)
22-
23-
service_info = nims.ServiceInfo(
24-
service_class="ni.examples.NIScopeAcquireWaveform_Python",
25-
description_url="",
26-
)
27-
28-
measurement_service = nims.MeasurementService(measurement_info, service_info)
2923
service_options = ServiceOptions()
3024

3125
VERTICAL_COUPLING_TO_ENUM = {

examples/niswitch_control_relays/measurement.py

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,12 @@
1212

1313
import ni_measurementlink_service as nims
1414

15-
measurement_info = nims.MeasurementInfo(
16-
display_name="NI-SWITCH Control Relays (Py)",
15+
service_directory = pathlib.Path(__file__).resolve().parent
16+
measurement_service = nims.MeasurementService(
17+
service_config_path=service_directory / "NISwitchControlRelays.serviceconfig",
1718
version="0.1.0.0",
18-
ui_file_paths=[pathlib.Path(__file__).resolve().parent / "NISwitchControlRelays.measui"],
19+
ui_file_paths=[service_directory / "NISwitchControlRelays.measui"],
1920
)
20-
21-
service_info = nims.ServiceInfo(
22-
service_class="ni.examples.NISwitchControlRelays_Python",
23-
description_url="",
24-
)
25-
26-
measurement_service = nims.MeasurementService(measurement_info, service_info)
2721
service_options = ServiceOptions()
2822

2923

examples/nivisa_dmm_measurement/measurement.py

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -20,18 +20,12 @@
2020

2121
import ni_measurementlink_service as nims
2222

23-
measurement_info = nims.MeasurementInfo(
24-
display_name="NI-VISA DMM Measurement (Py)",
23+
service_directory = pathlib.Path(__file__).resolve().parent
24+
measurement_service = nims.MeasurementService(
25+
service_config_path=service_directory / "NIVisaDmmMeasurement.serviceconfig",
2526
version="0.1.0.0",
26-
ui_file_paths=[pathlib.Path(__file__).resolve().parent / "NIVisaDmmMeasurement.measui"],
27+
ui_file_paths=[service_directory / "NIVisaDmmMeasurement.measui"],
2728
)
28-
29-
service_info = nims.ServiceInfo(
30-
service_class="ni.examples.NIVisaDmmMeasurement_Python",
31-
description_url="",
32-
)
33-
34-
measurement_service = nims.MeasurementService(measurement_info, service_info)
3529
service_options = ServiceOptions()
3630

3731

examples/sample_measurement/measurement.py

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -7,23 +7,17 @@
77

88
import ni_measurementlink_service as nims
99

10-
measurement_info = nims.MeasurementInfo(
11-
display_name="Sample Measurement (Py)",
10+
service_directory = pathlib.Path(__file__).resolve().parent
11+
sample_measurement_service = nims.MeasurementService(
12+
service_config_path=service_directory / "SampleMeasurement.serviceconfig",
1213
version="0.1.0.0",
1314
ui_file_paths=[
14-
pathlib.Path(__file__).resolve().parent / "SampleMeasurement.measui",
15-
pathlib.Path(__file__).resolve().parent / "SampleAllParameters.measui",
16-
pathlib.Path(__file__).resolve().parent / "SampleMeasurement.vi",
15+
service_directory / "SampleMeasurement.measui",
16+
service_directory / "SampleAllParameters.measui",
17+
service_directory / "SampleMeasurement.vi",
1718
],
1819
)
1920

20-
service_info = nims.ServiceInfo(
21-
service_class="ni.examples.SampleMeasurement_Python",
22-
description_url="",
23-
)
24-
25-
sample_measurement_service = nims.MeasurementService(measurement_info, service_info)
26-
2721

2822
@sample_measurement_service.register_measurement
2923
@sample_measurement_service.configuration("Float In", nims.DataType.Float, 0.06)

ni_measurementlink_generator/ni_measurementlink_generator/templates/measurement.py.mako

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,13 @@ import sys
88
import click
99
import ni_measurementlink_service as nims
1010

11-
measurement_info = nims.MeasurementInfo(
12-
display_name="${display_name}",
13-
version="${version}",
14-
ui_file_paths=[pathlib.Path(__file__).resolve().parent / "${ui_file}"],
11+
service_directory = pathlib.Path(__file__).resolve().parent
12+
measurement_service = nims.MeasurementService(
13+
service_config_path=service_directory / "${display_name}.serviceconfig",
14+
version="0.1.0.0",
15+
ui_file_paths=[service_directory / "${ui_file}"],
1516
)
1617

17-
service_info = nims.ServiceInfo(
18-
service_class="${service_class}",
19-
description_url="${description_url}",
20-
)
21-
22-
measurement_service = nims.MeasurementService(measurement_info, service_info)
23-
2418

2519
@measurement_service.register_measurement
2620
@measurement_service.configuration("Array in", nims.DataType.DoubleArray1D, [0.0])

ni_measurementlink_generator/tests/test_assets/example_renders/example.py

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,13 @@
66
import click
77
import ni_measurementlink_service as nims
88

9-
measurement_info = nims.MeasurementInfo(
10-
display_name="SampleMeasurement",
11-
version="1.0.0.0",
12-
ui_file_paths=[pathlib.Path(__file__).resolve().parent / "MeasurementUI.measui"],
9+
service_directory = pathlib.Path(__file__).resolve().parent
10+
measurement_service = nims.MeasurementService(
11+
service_config_path=service_directory / "SampleMeasurement.serviceconfig",
12+
version="0.1.0.0",
13+
ui_file_paths=[service_directory / "MeasurementUI.measui"],
1314
)
1415

15-
service_info = nims.ServiceInfo(
16-
service_class="SampleMeasurement_Python",
17-
description_url="https://www.example.com/SampleMeasurement.html",
18-
)
19-
20-
measurement_service = nims.MeasurementService(measurement_info, service_info)
21-
2216

2317
@measurement_service.register_measurement
2418
@measurement_service.configuration("Array in", nims.DataType.DoubleArray1D, [0.0])

0 commit comments

Comments
 (0)