package trafficjams;
import jade.core.Agent;
import jade.wrapper.PlatformController;
import trafficjams.agents.VehicleContainer;
import trafficjams.model.interfaces.IVehicle;
import trafficjams.model.registers.TrafficRegister;
import trafficjams.model.registers.VehicleRegister;
import trafficjams.model.visualization.Visualizator;
import java.util.ArrayList;
/**
* Created by IntelliJ IDEA.
* User: Администратор
* Date: 20.11.11
* Time: 13:46
* To change this template use File | Settings | File Templates.
*/
public class HostAgent extends Agent{
//тест коммита
public void runVisualisator(){
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
Visualizator.getInstance().setHostAgent(HostAgent.this);
}
});
}
@Override
public void setup(){
super.setup();
this.runVisualisator();
}
public void initTraffic(TrafficRegister traffic) {
//System.out.println("kljkj");
VehicleRegister reg = traffic.getVehicleRegister();
ArrayList<IVehicle> added = new ArrayList<IVehicle>();
int i = 0 ;
PlatformController container = getContainerController(); // get a container controller for creating new agents
for (IVehicle v : reg.getVehicles()){
//added.add(v);
//v.start(added,reg.getVehicles().size());
try{
// create a new agent
String localName = "DriveAgent_"+i++;
//AgentController guest = container.createNewAgent(localName, "examples.party.GuestAgent", null);
// guest.start();
//Agent guest = new VehicleContainer(v);
//guest.doStart( localName );
new VehicleContainer(v,localName,container);
//++i;
}catch (Exception e){
e.printStackTrace();
}
}
}
}