100 lines
2.1 KiB
Java
100 lines
2.1 KiB
Java
![]() |
package de.ctdo.bunti.model;
|
||
|
|
||
|
import java.util.*;
|
||
|
|
||
|
import de.ctdo.bunti.dmx.*;
|
||
|
|
||
|
public class BuntiDMXDevice extends BuntiDevice {
|
||
|
int startAddress;
|
||
|
List<DMXChannel> dmxValues = new ArrayList<DMXChannel>();
|
||
|
|
||
|
public DMXChannel getDMXChannelByName(String channel) {
|
||
|
for (DMXChannel dx : dmxValues) {
|
||
|
if(channel.equals(dx.description)) {
|
||
|
return dx;
|
||
|
}
|
||
|
}
|
||
|
return null;
|
||
|
}
|
||
|
|
||
|
public DMXChannel getDMXChannelByOffset(int offset) {
|
||
|
for (DMXChannel dx : dmxValues) {
|
||
|
if(offset == dx.offset) {
|
||
|
return dx;
|
||
|
}
|
||
|
}
|
||
|
return null;
|
||
|
}
|
||
|
|
||
|
// public DMXChannel getDMXChannelByAddress(int address) {
|
||
|
// int offset = address - startAddress;
|
||
|
// return getDMXChannelByOffset(offset);
|
||
|
// }
|
||
|
|
||
|
|
||
|
|
||
|
public void setChannelValueByName(String name, int value) {
|
||
|
DMXChannel dx = getDMXChannelByName(name);
|
||
|
if(dx != null) {
|
||
|
dx.value = DMX.sanitizeDMXValue(value);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// public void setChannelValueByOffset(int offsetChannel, int value) {
|
||
|
// DMXChannel dx = getDMXChannelByOffset(offsetChannel);
|
||
|
// if(dx != null) {
|
||
|
// dx.value = DMX.sanitizeDMXValue(value);
|
||
|
// }
|
||
|
// }
|
||
|
|
||
|
// public void setChannelValueByAddress(int address, int value) {
|
||
|
// DMXChannel dx = getDMXChannelByAddress(address);
|
||
|
// if(dx != null) {
|
||
|
// dx.value = DMX.sanitizeDMXValue(value);
|
||
|
// }
|
||
|
// }
|
||
|
|
||
|
public int getChannelValueByName(String name) {
|
||
|
DMXChannel dx = getDMXChannelByName(name);
|
||
|
if(dx != null) {
|
||
|
return dx.value;
|
||
|
}
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
// public int getChannelValueByOffset(int offsetChannel) {
|
||
|
// DMXChannel dx = getDMXChannelByOffset(offsetChannel)
|
||
|
// if(dx != null) {
|
||
|
// return dx.value;
|
||
|
// }
|
||
|
// return 0;
|
||
|
// }
|
||
|
|
||
|
// public int getChannelValueByAddress(int address) {
|
||
|
// DMXChannel dx = getDMXChannelByAddress(address);
|
||
|
// if(dx != null) {
|
||
|
// return dx.value;
|
||
|
// }
|
||
|
// return 0;
|
||
|
// }
|
||
|
|
||
|
public int getStartAddress() {
|
||
|
return startAddress;
|
||
|
}
|
||
|
|
||
|
public void setStartAddress(int startAddress) {
|
||
|
this.startAddress = startAddress;
|
||
|
}
|
||
|
|
||
|
public void addChannel(DMXChannel channel) {
|
||
|
dmxValues.add(channel);
|
||
|
}
|
||
|
public void removeChannel(int offset) {
|
||
|
DMXChannel dx = getDMXChannelByOffset(offset);
|
||
|
if(dx != null) {
|
||
|
dmxValues.remove(offset);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
}
|