Skip to content

Commit c021ccb

Browse files
authored
nirfsg: Refactor create_deembedding_sparameter_table_array to calculate sparameterTableSize from sparameterTable (#2168)
1 parent 2854cbb commit c021ccb

File tree

4 files changed

+10
-8
lines changed

4 files changed

+10
-8
lines changed

generated/nirfsg/nirfsg/_library_interpreter.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -240,14 +240,14 @@ def configure_software_start_trigger(self): # noqa: N802
240240
errors.handle_error(self, error_code, ignore_warnings=False, is_error_handling=False)
241241
return
242242

243-
def create_deembedding_sparameter_table_array(self, port, table_name, frequencies, sparameter_table, sparameter_table_size, number_of_ports, sparameter_orientation): # noqa: N802
243+
def create_deembedding_sparameter_table_array(self, port, table_name, frequencies, sparameter_table, number_of_ports, sparameter_orientation): # noqa: N802
244244
vi_ctype = _visatype.ViSession(self._vi) # case S110
245245
port_ctype = ctypes.create_string_buffer(port.encode(self._encoding)) # case C020
246246
table_name_ctype = ctypes.create_string_buffer(table_name.encode(self._encoding)) # case C020
247247
frequencies_ctype = _get_ctypes_pointer_for_buffer(value=frequencies) # case B510
248248
frequencies_size_ctype = _visatype.ViInt32(0 if frequencies is None else len(frequencies)) # case S160
249249
sparameter_table_ctype = _get_ctypes_pointer_for_buffer(value=sparameter_table, library_type=_complextype.NIComplexNumber) # case B510
250-
sparameter_table_size_ctype = _visatype.ViInt32(sparameter_table_size) # case S150
250+
sparameter_table_size_ctype = _visatype.ViInt32(0 if sparameter_table is None else sparameter_table.size) # case S161
251251
number_of_ports_ctype = _visatype.ViInt32(number_of_ports) # case S150
252252
sparameter_orientation_ctype = _visatype.ViInt32(sparameter_orientation.value) # case S130
253253
error_code = self._library.niRFSG_CreateDeembeddingSparameterTableArray(vi_ctype, port_ctype, table_name_ctype, frequencies_ctype, frequencies_size_ctype, sparameter_table_ctype, sparameter_table_size_ctype, number_of_ports_ctype, sparameter_orientation_ctype)

generated/nirfsg/nirfsg/session.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6167,7 +6167,7 @@ def configure_software_start_trigger(self):
61676167
self._interpreter.configure_software_start_trigger()
61686168

61696169
@ivi_synchronized
6170-
def _create_deembedding_sparameter_table_array(self, port, table_name, frequencies, sparameter_table, sparameter_table_size, number_of_ports, sparameter_orientation):
6170+
def _create_deembedding_sparameter_table_array(self, port, table_name, frequencies, sparameter_table, number_of_ports, sparameter_orientation):
61716171
r'''_create_deembedding_sparameter_table_array
61726172

61736173
Creates an s-parameter de-embedding table for the port from the input data.
@@ -6225,7 +6225,7 @@ def _create_deembedding_sparameter_table_array(self, port, table_name, frequenci
62256225
raise TypeError('sparameter_table must be numpy.ndarray of dtype=complex128, is ' + str(sparameter_table.dtype))
62266226
if sparameter_table.ndim != 3:
62276227
raise TypeError('sparameter_table must be numpy.ndarray of dimension=3, is ' + str(sparameter_table.ndim))
6228-
self._interpreter.create_deembedding_sparameter_table_array(port, table_name, frequencies, sparameter_table, sparameter_table_size, number_of_ports, sparameter_orientation)
6228+
self._interpreter.create_deembedding_sparameter_table_array(port, table_name, frequencies, sparameter_table, number_of_ports, sparameter_orientation)
62296229

62306230
@ivi_synchronized
62316231
def create_deembedding_sparameter_table_s2p_file(self, port, table_name, s2p_file_path, sparameter_orientation):
@@ -6350,8 +6350,7 @@ def create_deembedding_sparameter_table_array(self, port, table_name, frequencie
63506350
if frequencies.size == sparameter_table.shape[0]:
63516351
if sparameter_table.shape[1] == sparameter_table.shape[2]:
63526352
number_of_ports = sparameter_table.shape[1]
6353-
sparameter_table_size = sparameter_table.size
6354-
return self._create_deembedding_sparameter_table_array(port, table_name, frequencies, sparameter_table, sparameter_table_size, number_of_ports, sparameter_orientation)
6353+
return self._create_deembedding_sparameter_table_array(port, table_name, frequencies, sparameter_table, number_of_ports, sparameter_orientation)
63556354
else:
63566355
raise ValueError("Row and column count of sparameter table should be equal. Table row count is {} and column count is {}.".format(sparameter_table.shape[1], sparameter_table.shape[2]))
63576356
else:

src/nirfsg/metadata/functions.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1055,6 +1055,10 @@
10551055
},
10561056
'name': 'sparameterTable',
10571057
'numpy': True,
1058+
'size': {
1059+
'mechanism': 'len',
1060+
'value': 'sparameterTableSize'
1061+
},
10581062
'type': 'NIComplexNumber[]',
10591063
'use_in_python_api': True
10601064
},

src/nirfsg/templates/session.py/create_deembedding_sparameter_table_array.py.mako

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,7 @@
1313
if frequencies.size == sparameter_table.shape[0]:
1414
if sparameter_table.shape[1] == sparameter_table.shape[2]:
1515
number_of_ports = sparameter_table.shape[1]
16-
sparameter_table_size = sparameter_table.size
17-
return self._create_deembedding_sparameter_table_array(port, table_name, frequencies, sparameter_table, sparameter_table_size, number_of_ports, sparameter_orientation)
16+
return self._create_deembedding_sparameter_table_array(port, table_name, frequencies, sparameter_table, number_of_ports, sparameter_orientation)
1817
else:
1918
raise ValueError("Row and column count of sparameter table should be equal. Table row count is {} and column count is {}.".format(sparameter_table.shape[1], sparameter_table.shape[2]))
2019
else:

0 commit comments

Comments
 (0)