102 lines
2.0 KiB
Java
102 lines
2.0 KiB
Java
/*
|
|
* Copyright (c) 2014 Paul Scherrer Institute. All rights reserved.
|
|
*/
|
|
package ch.psi.mxsc;
|
|
|
|
import ch.psi.pshell.device.Device;
|
|
import ch.psi.pshell.device.DeviceBase;
|
|
import ch.psi.pshell.imaging.DimensionDouble;
|
|
|
|
/**
|
|
*
|
|
*/
|
|
public class Sample extends DeviceBase {
|
|
|
|
final int index;
|
|
|
|
public Sample(Puck puck, int index){
|
|
super(puck.getName() + ":" + (index+1));
|
|
setParent(puck);
|
|
this.index = index;
|
|
}
|
|
|
|
public Puck getPuck() {
|
|
return (Puck) getParent();
|
|
}
|
|
|
|
DimensionDouble getSize(){
|
|
return new DimensionDouble(12.0, 12.0);
|
|
}
|
|
|
|
|
|
public int getIndex() {
|
|
return index;
|
|
}
|
|
|
|
boolean enabled;
|
|
|
|
public boolean isEnabled() {
|
|
return enabled;
|
|
}
|
|
|
|
public void setEnabled(boolean value) {
|
|
enabled = value;
|
|
}
|
|
|
|
|
|
boolean selected;
|
|
|
|
public boolean isSelected() {
|
|
return selected;
|
|
}
|
|
|
|
public void toggleSelected(boolean value) {
|
|
setSelected(!selected);
|
|
}
|
|
|
|
public void setSelected(boolean value) {
|
|
if (value != selected){
|
|
if (value == true){
|
|
((Puck)getParent()).setSelected(true);
|
|
for (Device d : getParent().getChildren()){
|
|
if (d instanceof Sample){
|
|
((Sample)d).selected = false;
|
|
}
|
|
}
|
|
}
|
|
selected = value;
|
|
}
|
|
getPuck().getBasePlate().onSelectionChanged();
|
|
}
|
|
|
|
boolean present;
|
|
|
|
public boolean isPresent() {
|
|
return present;
|
|
}
|
|
|
|
public void setPresent(boolean value) {
|
|
present = value;
|
|
}
|
|
|
|
boolean loaded;
|
|
|
|
public boolean isLoaded() {
|
|
return loaded;
|
|
}
|
|
|
|
public void setLoaded(boolean value) {
|
|
loaded = value;
|
|
if (value) {
|
|
wasLoaded = true;
|
|
}
|
|
}
|
|
|
|
boolean wasLoaded;
|
|
|
|
public boolean wasLoaded() {
|
|
return wasLoaded;
|
|
}
|
|
|
|
}
|