2018-09-02 13:36:49 +02:00
|
|
|
package it.cavallium.warppi.device;
|
2018-06-30 18:46:53 +02:00
|
|
|
|
2018-09-04 12:12:41 +02:00
|
|
|
import it.cavallium.warppi.Engine;
|
2018-09-02 13:36:49 +02:00
|
|
|
import it.cavallium.warppi.gui.DisplayManager;
|
2018-06-30 18:46:53 +02:00
|
|
|
|
|
|
|
public class HardwareDevice {
|
|
|
|
private final DisplayManager displayManager;
|
|
|
|
private final InputManager inputManager;
|
2018-08-28 02:39:41 +02:00
|
|
|
|
2018-09-22 11:17:30 +02:00
|
|
|
public HardwareDevice(final DisplayManager m, final InputManager im) {
|
2018-06-30 18:46:53 +02:00
|
|
|
displayManager = m;
|
|
|
|
inputManager = im;
|
|
|
|
}
|
|
|
|
|
|
|
|
public DisplayManager getDisplayManager() {
|
|
|
|
return displayManager;
|
|
|
|
}
|
2018-08-28 02:39:41 +02:00
|
|
|
|
2018-06-30 18:46:53 +02:00
|
|
|
public InputManager getInputManager() {
|
|
|
|
return inputManager;
|
|
|
|
}
|
|
|
|
|
2018-09-22 11:17:30 +02:00
|
|
|
public void setup(final Runnable r) {
|
2018-06-30 18:46:53 +02:00
|
|
|
displayManager.initialize();
|
2018-08-28 02:39:41 +02:00
|
|
|
inputManager.getKeyboard().startKeyboard();
|
2018-09-22 11:17:30 +02:00
|
|
|
final Thread t = new Thread(r);
|
2018-09-04 12:12:41 +02:00
|
|
|
Engine.getPlatform().setThreadDaemon(t, false);
|
|
|
|
Engine.getPlatform().setThreadName(t, "Main thread (after setup)");
|
2018-06-30 18:46:53 +02:00
|
|
|
t.start();
|
|
|
|
}
|
2018-08-28 02:39:41 +02:00
|
|
|
|
2018-06-30 18:46:53 +02:00
|
|
|
}
|