48 sc_out<bool> ok_for_incr;
56 sensitive << pulse.pos();
65 sc_in<bool> ok_for_incr;
68 sc_out<double> total_dist;
69 sc_out<double> partial_dist;
72 static bool prev_reset;
73 static double total_compute_dist;
74 static double partial_compute_dist;
77 void compute_total_proc();
78 void compute_partial_proc();
83 sensitive << ok_for_incr;
86 sensitive << ok_for_incr;
89 total_compute_dist = 0.0;
90 partial_compute_dist = 0.0;
98 sc_in<double> total_dist;
99 sc_in<double> partial_dist;
102 sc_out<double>
total;
103 sc_out<double> partial;
106 void lcd_driver_proc();
111 sensitive << total_dist << partial_dist;
123 sc_out<double>
total;
124 sc_out<double> partial;
127 sc_signal<bool> ok_for_incr;
128 sc_signal<double> total_dist;
129 sc_signal<double> partial_dist;
132 dist_read_mod *read_mod;
133 dist_compute_mod *compute_mod;
134 dist_lcd_mod *lcd_mod;
138 read_mod =
new dist_read_mod(
"read_mod");
139 compute_mod =
new dist_compute_mod(
"compute_mod");
140 lcd_mod =
new dist_lcd_mod(
"lcd_mod");
146 read_mod->pulse(pulse);
147 read_mod->start(start);
148 read_mod->ok_for_incr(ok_for_incr);
157 compute_mod->reset(
reset);
158 compute_mod->start(start);
159 compute_mod->ok_for_incr.bind(ok_for_incr);
160 compute_mod->total_dist.bind(total_dist);
161 compute_mod->partial_dist(partial_dist);
169 lcd_mod->start(start);
170 lcd_mod->total_dist(total_dist);
171 lcd_mod->partial_dist(partial_dist);
172 lcd_mod->total(
total);
173 lcd_mod->partial(partial);