Render.Make
module G : sig ... end
get width code and actual width in chars
get height code and actual height in chars
max width of values window. Needs to evaluate the entire waveform.
gets an estimate fo the max with of values. Inaccruate for the constructors U
, S
and F
.
max height of wave window
val draw_clock_cycle :
ctx:G.ctx ->
style:G.style ->
bounds:Hardcaml_waveterm__Draw.rect ->
w:Base.int ->
h:Base.int ->
c:Base.int ->
Base.unit
draws one clock cycle
val draw_clock_cycles :
ctx:G.ctx ->
style:G.style ->
bounds:Hardcaml_waveterm__Draw.rect ->
w:Base.int ->
waw:Base.int ->
h:Base.int ->
cnt:Base.int ->
Base.unit
draws cnt
clock cycles
val draw_binary_data :
ctx:G.ctx ->
style:G.style ->
bounds:Hardcaml_waveterm__Draw.rect ->
w:Base.int ->
h:Base.int ->
data:Hardcaml_waveterm__Data.t ->
off:Base.int ->
Base.unit
draw binary waveform data
val draw_data :
ctx:G.ctx ->
style:G.style ->
bounds:Hardcaml_waveterm__Draw.rect ->
to_str:( Hardcaml.Bits.t -> Base.string ) ->
alignment:Text_alignment.t ->
w:Base.int ->
h:Base.int ->
data:Hardcaml_waveterm__Data.t ->
off:Base.int ->
Base.unit
draw arbitrary waveform data
type 'a draw_item =
?style:Hardcaml_waveterm__Draw.Style.t ->
ctx:G.ctx ->
bounds:Hardcaml_waveterm__Draw.rect ->
Hardcaml_waveterm__Waves.t ->
'a
val draw_cursor :
ctx:G.ctx ->
bounds:Hardcaml_waveterm__Draw.rect ->
state:Hardcaml_waveterm__Waves.t ->
Base.unit
draw cursor
val draw_wave : Base.unit draw_item
draw waveforms
val draw_signals :
?alignment:Text_alignment.t ->
?style:Hardcaml_waveterm__Draw.Style.t ->
selected_wave_index:Base.int Base.option ->
ctx:G.ctx ->
bounds:Hardcaml_waveterm__Draw.rect ->
Hardcaml_waveterm__Waves.t ->
Base.unit
draw signal names
val draw_values : Base.int draw_item
draw signal values
val draw_status : Base.unit draw_item
val draw_ui :
?signals_alignment:Text_alignment.t ->
?style:Styles.t ->
?bounds:Bounds.t ->
ctx:G.ctx ->
Hardcaml_waveterm__Waves.t ->
Base.unit
draw standard user inferface (names, values, waveforms left to right