Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package core.communication.usb;
- import java.util.Scanner;
- import com.fazecast.jSerialComm.SerialPort;
- import core.Main;
- public class Arduino extends Thread {
- SerialPort port;
- FaderController faderController;
- Main master;
- public Arduino(SerialPort pPort, Main main){
- this.master = main;
- this.faderController = new FaderController(1, 1, this.master);
- this.port = pPort;
- if(this.port.openPort()) {
- System.out.println("Successfully opened the port.");
- master.arduinoConnected = true;
- } else {
- System.out.println("Unable to open the port.");
- master.arduinoConnected = false;
- return;
- }
- this.port.setComPortTimeouts(SerialPort.TIMEOUT_READ_SEMI_BLOCKING, 0, 0);
- }
- @Override
- public void run() {
- super.run();
- Scanner data = new Scanner(this.port.getInputStream());
- while(data.hasNextLine()) {
- String msg = data.nextLine();
- String[] args = msg.split(";");
- System.out.println(msg);
- // if (args[0] == "1"){
- switch (Integer.parseInt(args[1])){
- case 1:
- this.faderController.setFaderValue(Integer.parseInt(args[2]), this.master.activePage, Integer.parseInt(args[3]));
- break;
- case 2:
- //TODO: Button Controller
- break;
- default:
- System.out.println(args[1]); //Just for debugging
- }
- // } else{
- // System.out.println("\"" + String.valueOf(args[0]) + "\" ist != \"1\"");
- // }
- }
- }
- public class FaderController {
- public Fader[] faders;
- Main main;
- FaderController(int pages, int faderPerPage, Main pMain){
- this.main = pMain;
- this.faders = new Fader[faderPerPage];
- for (int i = 0; i<this.faders.length;i++){
- this.faders[i] = new Fader(pages);
- }
- }
- public void setFaderValue(int faderID, int page, int value){
- faders[faderID].valuePages[page] = value;
- System.out.println("Set value of Fader Nr " + (faderID + 1) + " on page " + (page + 1) + " to " + value);
- if (!this.main.changingFaderPages){
- if (this.main.faderMode) {
- this.main.oscSender.setFaderIntensity(faderID + 1, page + 1, Double.valueOf(value)/100);
- } else {
- this.main.oscSender.setChannelIntensity(page*this.main.faderAmountPerPage + faderID + 1,value);
- }
- }
- }
- public class Fader{
- public int[] valuePages;
- Fader(int pages){
- valuePages = new int[pages];
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement