2021-09-09 00:50:28 +02:00
|
|
|
pub mod config;
|
|
|
|
mod padcontrol;
|
|
|
|
mod zabbix;
|
2021-09-05 20:30:24 +02:00
|
|
|
|
2021-09-09 00:50:28 +02:00
|
|
|
use config::Config;
|
2021-09-11 23:23:59 +02:00
|
|
|
//use std::rc::Rc;
|
|
|
|
//use std::vec::Vec;
|
|
|
|
use zabbix::problems::ZabbixLayout;
|
2021-09-05 20:30:24 +02:00
|
|
|
|
2021-09-09 00:50:28 +02:00
|
|
|
fn main() {
|
2021-09-11 23:23:59 +02:00
|
|
|
let mut datamatrix = ZabbixLayout{layout: vec!()};
|
|
|
|
|
2021-09-09 09:22:48 +02:00
|
|
|
// parse arguments
|
2021-09-09 00:50:28 +02:00
|
|
|
let matches = config::argparse();
|
2021-09-05 20:30:24 +02:00
|
|
|
|
2021-09-09 09:22:48 +02:00
|
|
|
// load configuration
|
|
|
|
let configfile = matches
|
|
|
|
.value_of("config")
|
|
|
|
.unwrap_or("config.json");
|
2021-09-09 00:50:28 +02:00
|
|
|
let mut cfg = Config::new();
|
|
|
|
cfg.load(&configfile);
|
2021-09-11 23:23:59 +02:00
|
|
|
zabbix::api::get_zabbix_authtoken(&mut cfg);
|
|
|
|
cfg.save(&configfile);
|
2021-09-05 20:30:24 +02:00
|
|
|
|
2021-09-09 09:22:48 +02:00
|
|
|
// init/connect to launchpad and clear it
|
|
|
|
let (mut canvas, mut poller) = padcontrol::initpad();
|
2021-09-11 23:23:59 +02:00
|
|
|
//padcontrol::input(&mut canvas, &mut poller);
|
|
|
|
padcontrol::draw(&mut canvas, &mut poller, &mut datamatrix, &mut cfg);
|
2021-09-05 20:30:24 +02:00
|
|
|
}
|