Files
killpaper/src/main.rs
Oliver Walter b1b4356686 include display driver,
and use rust_tls to make crosscompile easy
2025-09-03 03:47:52 +02:00

95 lines
2.0 KiB
Rust

pub mod graphics;
pub mod traits;
pub mod color;
pub mod rect;
/// Interface for the physical connection between display and the controlling device
pub mod interface;
pub mod epd7in5_v2;
pub mod display;
pub mod killinfo;
pub mod model;
pub mod services;
pub mod epaper;
pub mod type_a;
use crate::killinfo::KillInfo;
use crate::services::esi_static::EsiClient;
use crate::services::zkill::ZkillClient;
pub const fn buffer_len(width: usize, height: usize) -> usize {
(width + 7) / 8 * height
}
fn main() {
let esi = EsiClient::new();
let zkill = ZkillClient::new();
let past_seconds = 60 * 60 * 24;
let my_corp_id = 98685373;
let mut display = display::Display::new();
let mut epaper = epaper::EPaper::new().expect("DisplayError");
display.clear(true);
epaper.clear(true);
epaper.flush().expect("flush error");
let response = zkill
.get_corporation_kills(my_corp_id, past_seconds)
.unwrap();
let mut builder = killinfo::KillInfoBuilder::new();
builder.set_corporation_id(my_corp_id);
let killmails: Vec<KillInfo> = response
.iter()
.map(|r| builder.make_kill_info(&zkill, &esi, r).unwrap())
.collect();
for (i,k) in killmails.iter().enumerate() {
let ii = i as i32;
let y : i32 = ii * 60;
display.draw_kill_info(k, 0, y);
epaper.draw_kill_info(k, 0, y);
}
let response = zkill
.get_corporation_losses(my_corp_id, past_seconds)
.unwrap();
let mut builder = killinfo::KillInfoBuilder::new();
builder.set_corporation_id(my_corp_id);
let killmails: Vec<KillInfo> = response
.iter()
.map(|r| builder.make_kill_info(&zkill, &esi, r).unwrap())
.collect();
for (i,k) in killmails.iter().enumerate() {
let ii = i as i32;
let y : i32 = ii * 60;
display.draw_loss_info(k, 400, y);
epaper.draw_loss_info(k, 400, y);
}
display.flush();
epaper.flush().expect("flush error");
}