bunti/bunti_server/src/main/java/de/ctdo/bunti/model/Par56Spot.java

70 lines
2.0 KiB
Java
Raw Normal View History

package de.ctdo.bunti.model;
import de.ctdo.bunti.dmx.DMX;
import de.ctdo.bunti.dmx.DMXChannel;
public class Par56Spot extends BuntiDMXDevice {
public final static String CHANNEL_MODE = "mode";
public final static String CHANNEL_RED = "red";
public final static String CHANNEL_GREEN = "green";
public final static String CHANNEL_BLUE = "blue";
public final static String CHANNEL_SPEED = "speed";
public Par56Spot(int deviceId, int startAddress, String name) {
addChannel(new DMXChannel(0, CHANNEL_MODE));
addChannel(new DMXChannel(1, "red"));
addChannel(new DMXChannel(2, CHANNEL_GREEN));
addChannel(new DMXChannel(3, CHANNEL_BLUE));
addChannel(new DMXChannel(4, CHANNEL_SPEED));
setStartAddress(startAddress);
setDeviceName(name);
setDeviceID(deviceId);
}
public void setColorRed(int value) {
setChannelValueByName(CHANNEL_RED, value);
}
public void setColorGreen(int value) {
setChannelValueByName(CHANNEL_GREEN, value);
}
public void setColorBlue(int value) {
setChannelValueByName(CHANNEL_BLUE, value);
}
public int getColorRed() {
return getChannelValueByName(CHANNEL_RED);
}
public int getColorGreen() {
return getChannelValueByName(CHANNEL_GREEN);
}
public int getColorBlue() {
return getChannelValueByName(CHANNEL_BLUE);
}
@Override
public void switchOff() {
setChannelValueByName(CHANNEL_MODE, DMX.DMX_CHANNEL_VALUE_MIN);
setColorRed(DMX.DMX_CHANNEL_VALUE_MIN);
setColorGreen(DMX.DMX_CHANNEL_VALUE_MIN);
setColorBlue(DMX.DMX_CHANNEL_VALUE_MIN);
setChannelValueByName(CHANNEL_SPEED, DMX.DMX_CHANNEL_VALUE_MIN);
}
@Override
public void switchOn() {
setChannelValueByName(CHANNEL_MODE, DMX.DMX_CHANNEL_VALUE_MIN);
setColorRed(DMX.DMX_CHANNEL_VALUE_MAX);
setColorGreen(DMX.DMX_CHANNEL_VALUE_MAX);
setColorBlue(DMX.DMX_CHANNEL_VALUE_MAX);;
setChannelValueByName(CHANNEL_SPEED, DMX.DMX_CHANNEL_VALUE_MIN);
}
@Override
public String toString() {
return "Par56Spot " + getDeviceID() + ", " + getDeviceName() +
"[" + getColorRed() + "," + getColorGreen() + "," + getColorBlue() + "]";
}
}