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");
142 read_mod->pulse.bind(pulse);
143 read_mod->start.bind(start);
144 read_mod->ok_for_incr.bind(ok_for_incr);
146 compute_mod->reset.bind(
reset);
147 compute_mod->start.bind(start);
148 compute_mod->ok_for_incr.bind(ok_for_incr);
149 compute_mod->total_dist.bind(total_dist);
150 compute_mod->partial_dist.bind(partial_dist);
152 lcd_mod->start.bind(start);
153 lcd_mod->total_dist.bind(total_dist);
154 lcd_mod->partial_dist.bind(partial_dist);
155 lcd_mod->total.bind(
total);
156 lcd_mod->partial.bind(partial);