package nl.ru.ai.projects.parrot.fsm;
import nl.ru.ai.projects.parrot.dronecontrol.ParrotDroneInterface;
import nl.ru.ai.projects.parrot.dronecontrol.PolePositionPollInterface;
private State connectedTo;
private Behavior transitionBehavior;
protected ParrotDroneInterface droneInterface;
protected PolePositionPollInterface polesInterface;
protected int duration;
protected double threshold;
public Transition(State toState, ParrotDroneInterface droneInterface, PolePositionPollInterface polesInterface) {
connectedTo = toState;
transitionBehavior = null;
duration = 0;
threshold = 0;
this.droneInterface = droneInterface;
this.polesInterface = polesInterface;
}
return connectedTo;
}
this.transitionBehavior = behavior;
}
public abstract boolean fire();
;
}
public void run()
throws InterruptedException {
if ( State.outputCurrentState )
System.out.println("Transition: "+this.getClass().getSimpleName());
if ( transitionBehavior != null )
transitionBehavior.run();
}
return duration;
}
this.duration = duration;
}
}