package lectures.animation.threads.synchronized_methods;
import util.annotations.WebDocuments;
import lectures.animation.threads_commands.ConcurrentShuttleLaunchAnimation;
import lectures.animation.threads_commands.ShuttleAnimator;
import lectures.animation.threads_commands.extra.ThreadSupport;
import lectures.composite.objects_shapes.PlottedShuttle;
import lectures.mvc.properties.AnObservablePlottedShuttle;
import bus.uigen.OEFrame;
import bus.uigen.ObjectEditor;
@WebDocuments({"Lectures/AnimationThreadsSynchronizedMethods.pptx", "Lectures/AnimationThreadsSynchronizedMethods.pdf", "Videos/AnimationThreadsSynchronizedMethods.avi"})
public class OneShuttleTwoSynchronizedShuttleAnimators extends SynchronizedConcurrentShuttleAnimations {
public static void main(String[] args) {
PlottedShuttle aShuttle1 = new AnObservablePlottedShuttle(SHUTTLE1_X, SHUTTLE1_Y);
displayShuttleFrame(aShuttle1);
ShuttleAnimator aShuttleAnimator1 = new ASynchronizedShuttleAnimator();
ShuttleAnimator aShuttleAnimator2 = new ASynchronizedShuttleAnimator();
concurrentDemoShuttleAnimation(aShuttleAnimator1, aShuttle1);
ThreadSupport.sleep(SECOND_THREAD_DELAY);
concurrentDemoShuttleAnimation(aShuttleAnimator2, aShuttle1);
}
}