pyDigitalWaveTools.json package

A module for loading and producing of wave data in json format (json equivalent to vcd module)

Submodules

pyDigitalWaveTools.json.value_format module

class pyDigitalWaveTools.json.value_format.JsonArrayFormatter(dimmensions, elm_formatter)

Bases: LogValueFormatter

bind_var_info(varInfo: VcdVarWritingInfo)
format(newVal: Value, updater, t: int, out: List[Tuple])
class pyDigitalWaveTools.json.value_format.JsonBitsFormatter

Bases: LogValueFormatter

bind_var_info(varInfo: VcdVarWritingInfo)
format(newVal: Value, updater, t: int, out: List[Tuple])
class pyDigitalWaveTools.json.value_format.JsonEnumFormatter

Bases: LogValueFormatter

format(newVal: Value, updater, t: int, out: List[Tuple])

pyDigitalWaveTools.json.writer module

class pyDigitalWaveTools.json.writer.JsonWriter(output: dict)

Bases: VcdWriter

date(text)
enddefinitions()
logChange(time, sig, newVal, valueUpdater)
setTime(t)
timescale(picoSeconds)
varScope(name) VcdVarWritingScope

Create sub variable scope with defined name

version(text)
class pyDigitalWaveTools.json.writer.VarIdScopeJson

Bases: dict

registerVariable(sig: object, name: str, parent: VcdVarScope, width: int, sigType: VCD_SIG_TYPE, valueFormatter: LogValueFormatter)
class pyDigitalWaveTools.json.writer.VarWritingScopeJson(name, writer, parent=None)

Bases: VcdVarWritingScope

Logical container of signals

addVar(sig: object, name: str, sigType: VCD_SIG_TYPE, width: int, valueFormatter: LogValueFormatter)

Add variable to scope

Variables:
  • ~.sig – user specified object to keep track of VcdVarInfo in change()

  • ~.sigType – vcd type name

  • ~.valueFormatter – value which converts new value in change() to vcd string