56 lines
1.5 KiB
C++
56 lines
1.5 KiB
C++
//
|
|
// Created by scoliono on 10/14/23.
|
|
//
|
|
|
|
#include <iostream>
|
|
#include <caca.h>
|
|
#include "../map/SigalertMapProvider.h"
|
|
#include "../map/SigalertRoadSensor.h"
|
|
|
|
void caca_display_drivers()
|
|
{
|
|
const char* const* drivers = caca_get_display_driver_list();
|
|
for (int i = 0; drivers[i] != NULL; i += 2)
|
|
{
|
|
std::cout << drivers[i] << '\t' << drivers[i + 1] << std::endl;
|
|
}
|
|
}
|
|
|
|
int main(int argc, char** argv)
|
|
{
|
|
caca_canvas_t *cv;
|
|
caca_display_t *dp;
|
|
caca_event_t ev;
|
|
dp = caca_create_display_with_driver(NULL, "ncurses");
|
|
if (!dp) {
|
|
std::cerr << "Failed to create caca display" << std::endl;
|
|
return 1;
|
|
}
|
|
cv = caca_get_canvas(dp);
|
|
caca_set_display_title(dp, "Hello!");
|
|
caca_set_color_ansi(cv, CACA_BLACK, CACA_WHITE);
|
|
caca_put_str(cv, 0, 0, "This is a message");
|
|
|
|
SigalertMapProvider smp;
|
|
smp.refreshData();
|
|
int i = 0;
|
|
while (i < smp.roadSensors().size())
|
|
{
|
|
auto sensor = smp.roadSensors()[i];
|
|
if (i < smp.roadSensors().size() - 1)
|
|
{
|
|
auto sensor2 = smp.roadSensors()[i + 1];
|
|
caca_draw_thin_line(cv, sensor->pos()[0], sensor->pos()[1], sensor2->pos()[0], sensor2->pos()[1]);
|
|
}
|
|
else
|
|
{
|
|
caca_draw_thin_line(cv, sensor->pos()[0], sensor->pos()[1], sensor->pos()[0], sensor->pos()[1]);
|
|
}
|
|
i += 2;
|
|
caca_refresh_display(dp);
|
|
}
|
|
caca_get_event(dp, CACA_EVENT_KEY_PRESS, &ev, -1);
|
|
caca_free_display(dp);
|
|
return 0;
|
|
}
|