package com.novoda.magicmirror.facerecognition;
import android.os.Handler;
import java.util.Random;
public class DummyFaceSource implements FaceReactionSource {
private static final int DELAY_MILLIS = 300;
private final FaceTracker.FaceListener faceListener;
private final Handler handler;
private final Random smilingProbabilityGenerator;
public DummyFaceSource(FaceTracker.FaceListener faceListener, Handler handler) {
this.faceListener = faceListener;
this.handler = handler;
this.smilingProbabilityGenerator = new Random();
}
private final Runnable updateFaceRunnable = new Runnable() {
@Override
public void run() {
FaceExpression expression = FaceExpression.fromSmilingProbability(smilingProbabilityGenerator.nextFloat());
faceListener.onNewFace(expression);
handler.postDelayed(this, DELAY_MILLIS);
}
};
@Override
public void start() {
handler.postDelayed(updateFaceRunnable, DELAY_MILLIS);
}
@Override
public void release() {
handler.removeCallbacks(updateFaceRunnable);
}
@Override
public boolean onKeyDown(int keyCode) {
return false;
}
@Override
public boolean onKeyUp(int keyCode) {
return false;
}
}