Source code for pybert.pybert_data

"""
Simulation results data encapsulation, for PyBERT.

Original Author: David Banas <capn.freako@gmail.com>

Original Date:   9 May 2017

This Python script provides a data structure for encapsulating the
simulation results data of a PyBERT instance. It was first
created, as a way to facilitate easier pickling, so that a particular
result could be saved and later restored, as a reference waveform.

Copyright (c) 2017 by David Banas; All rights reserved World wide.
"""

from chaco.api import ArrayPlotData

[docs]class PyBertData(object): """ PyBERT simulation results data encapsulation class. This class is used to encapsulate that subset of the results data for a PyBERT instance, which is to be saved when the user clicks the "Save Results" button. """ _item_names = [ "chnl_h", "tx_out_h", "ctle_out_h", "dfe_out_h", "chnl_s", "tx_s", "ctle_s", "dfe_s", "tx_out_s", "ctle_out_s", "dfe_out_s", "chnl_p", "tx_out_p", "ctle_out_p", "dfe_out_p", "chnl_H", "tx_H", "ctle_H", "dfe_H", "tx_out_H", "ctle_out_H", "dfe_out_H", ] def __init__(self, the_PyBERT): """ Copy just that subset of the supplied PyBERT instance's 'plotdata' attribute, which should be saved during pickling. """ plotdata = the_PyBERT.plotdata the_data = ArrayPlotData() for item_name in self._item_names: the_data.set_data(item_name, plotdata.get_data(item_name)) self.the_data = the_data