main.rs 965 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. mod interface;
  2. mod bitboard;
  3. mod movegen;
  4. mod engine;
  5. mod game;
  6. mod evaluate;
  7. mod search;
  8. mod zobrist;
  9. mod hash;
  10. extern crate log;
  11. extern crate simplelog;
  12. extern crate rand;
  13. use simplelog::*;
  14. use std::sync::mpsc;
  15. use std::{thread, fs::File};
  16. use log::*;
  17. use engine::Engine;
  18. fn main() {
  19. /*let mut builder = Builder::from_default_env();
  20. builder
  21. .filter(None, LevelFilter::Info)
  22. .target(Target::Pipe(Box::new(File::create("debug.log").unwrap())))
  23. //.target(Target::Stderr)
  24. .init();
  25. */
  26. let logfile = File::create("C:\\Users\\Nicolas\\debug.log").unwrap();
  27. simplelog::WriteLogger::init(LevelFilter::Info, Config::default(), logfile).unwrap();
  28. let (esend, erecv) = mpsc::channel();
  29. let (isend, irecv) = mpsc::channel();
  30. // spawn engine thread
  31. thread::spawn(move || {
  32. let mut engine = Engine::new(erecv, isend);
  33. engine.run();
  34. });
  35. interface::run(irecv, esend);
  36. }