use SCX::Track;
use SCX::Reader;
-my $no_reader = 0;
-
-my $gui = SCX::GUI->new;
+my $gui = SCX::GUI->new({ img_height => 80 });
my $track = SCX::Track->new({ gui => $gui });
-if (!$no_reader) {
- my $reader = SCX::Reader->new({
+my $reader;
+eval {
+ $reader = SCX::Reader->new({
portname => '/dev/ttyUSB0',
logfile => 'log',
track => $track,
});
+};
+
+$track->car(0)->set_model('F1 Ferrari');
+$track->car(1)->set_model('F1 McLaren');
+$track->car(2)->set_model('F1 Williams');
+$track->car(3)->set_model('Citroen Xsara');
+$track->car(4)->set_model('Citroen C4');
+$track->car(5)->set_model('Ford Focus');
+$track->car(0)->set_driver('Ivi');
+$track->car(1)->set_driver('Filípek');
+$track->car(2)->set_driver('Táta');
+
+if ($reader) {
Glib::IO->add_watch(fileno($reader->fh), 'in', \&scx_read, $reader);
+} else {
+ # Just display some random values
+ $gui->rounds('5/13');
+ $gui->time('53.4');
+ $gui->best_lap('12.3');
+
+ $track->car(0)->set_lap(13);
+ $track->car(1)->set_lap(11);
+ $track->car(2)->set_lap(10);
+ $track->car(3)->set_lap(undef);
+ $track->car(4)->set_lap(undef);
+ $track->car(5)->set_lap(undef);
+
+ $track->car(0)->set_laptime(9.12322);
+ $track->car(1)->set_laptime(15.313);
+ $track->car(2)->set_laptime(5.989);
+
+ $track->car(0)->set_fuel(6);
+ $track->car(1)->set_fuel(2);
+ $track->car(2)->set_fuel(8);
+
+ $track->car(0)->set_throttle(0);
+ $track->car(1)->set_throttle(8);
+ $track->car(2)->set_throttle(12);
}
$gui->show;
}
sub scx_read {
- my ($event, $reader) = @_;
+ my ($event, $fh, $reader) = @_;
$reader->read();
return TRUE;