Paragon-neo/100g: Reading the Noise Transfer Table
The Paragon-neo/100G has an integrated test for G.8273.2 Noise Transfer. The CAT shows the results of this test as a graph and also as a table. The example below shows you how to read this table from your script.
Python
from __future__ import print_function import sys # Globals ---------------------------------------------------------------------- # The IP address of the instrument ipAddr = "100g-vm2" # ------------------------------------------------------------------------------ # Import the wrapper functions # It is assumed that the wrapper exists on the instrument sys.path.append('//' + ipAddr + '/calnex100g/RemoteControl/') import calnexRest as p # Function to return the noise transfer table. # This assumes that the measurement has stopped # Metric type is either PTPNoiseTransfer or SyncENoiseTransfer def printNoiseTransferTable (): # Get the number of rows numRows = p.calnexGetVal ("cat/measurement/DelayReq/D/PTPNoiseTransfer/-/dgv/count", "Count") # Print the column headers columns = p.calnexGetVal ("cat/measurement/DelayReq/D/PTPNoiseTransfer/-/dgv/columns", "ColumnLayout") for col in columns: print (col) print (col["Label"]+" ", end='') print () # The last two parts of the path are row start index and number of rows to return # Just use brute force and get everything tableRows = p.calnexGetVal ("cat/measurement/DelayReq/D/PTPNoiseTransfer/-/dgv/data/0/15", "Rows") #print (tableRows) for row in tableRows: #print (row) #print (row["DataRow"]) for column in row["DataRow"]["ColumnData"]: #print (column) value = column["Value"] print (value+" ", end='') print() p.calnexInit (ipAddr) printNoiseTransferTable ()