package rmi.rmiimage;
import ip.gui.frames.ClosableFrame;
import java.awt.*;
import java.awt.event.ComponentEvent;
import java.awt.event.ComponentListener;
public class CPUArrayFrame extends
ClosableFrame implements
ComponentListener {
public void componentShown(
ComponentEvent e) {
}
public void componentMoved(
ComponentEvent e) {
}
public void componentHidden(
ComponentEvent e) {
}
public void componentResized(
ComponentEvent e) {
pack();
}
public CpuPanel[] addCpus(int N) {
setLayout(new
GridLayout(2, 1));
setBackground(Color.white);
PapPanel pap =
new PapPanel(N);
add(pap);
add(new BCP(this));
pack();
return pap.cpuPanels;
}
public void incrementCpus() {
int statearr[] = new int[cpus.length];
for (int i = 0; i < cpus.length; i++)
statearr[i] = -1;
for (int i = 0; i < cpus.length; i++) {
if (cpus[i].getstate())
statearr[i] = 1;
}
Client mc = new Client(statearr);
for (int i = 0; i < cpus.length; i++) {
if (cpus[i].getstate()) {
System.out.println("From CPUArrayframe!");
cpus[i].setLightOn(true);
mc.Start(i, cpus[i]);
}
}
}
public void terminateCpus() {
for (int i = 0; i < cpus.length; i++) {
cpus[i].setSpeed(0);
cpus[i].setLightOn(false);
}
}
CpuPanel cpus[];
public void init() {
cpus = addCpus(20);
for (int i = 0; i < cpus.length; i++)
cpus[i].setSpeed(0);
setVisible(true);
addComponentListener(this);
}
public static void main(String args[]) {
CPUArrayFrame d = new CPUArrayFrame();
d.init();
}
}