package com.afollestad.materialcamera.internal; import android.app.Fragment; import android.support.annotation.DrawableRes; import android.support.annotation.Nullable; import android.support.annotation.StringRes; import java.util.List; /** * @author Aidan Follestad (afollestad) */ public interface BaseCaptureInterface { void onRetry(@Nullable String outputUri); void onShowPreview(Fragment fragment,@Nullable String outputUri, boolean countdownIsAtZero); void onShowStillshot(String outputUri); void setRecordingStart(long start); void setRecordingEnd(long end); long getRecordingStart(); long getRecordingEnd(); boolean hasLengthLimit(); boolean countdownImmediately(); long getLengthLimit(); void setCameraPosition(int position); void toggleCameraPosition(); Object getCurrentCameraId(); @BaseCaptureActivity.CameraPosition int getCurrentCameraPosition(); void setFrontCamera(Object id); void setBackCamera(Object id); Object getFrontCamera(); Object getBackCamera(); void useMedia(String uri); boolean shouldAutoSubmit(); boolean allowRetry(); void setDidRecord(boolean didRecord); boolean didRecord(); boolean restartTimerOnRetry(); boolean continueTimerInPlayback(); int videoEncodingBitRate(int defaultVal); int audioEncodingBitRate(int defaultVal); int videoFrameRate(int defaultVal); int videoPreferredHeight(); float videoPreferredAspect(); long maxAllowedFileSize(); int qualityProfile(); @DrawableRes int iconRecord(); @DrawableRes int iconStop(); @DrawableRes int iconFrontCamera(); @DrawableRes int iconRearCamera(); @DrawableRes int iconPlay(); @DrawableRes int iconPause(); @DrawableRes int iconRestart(); @StringRes int labelRetry(); @Deprecated @StringRes int labelUseVideo(); @StringRes int labelConfirm(); @DrawableRes int iconStillshot(); /** * @return true if we only want to take photographs instead of video capture */ boolean useStillshot(); void toggleFlashMode(); @BaseCaptureActivity.FlashMode int getFlashMode(); @DrawableRes int iconFlashAuto(); @DrawableRes int iconFlashOn(); @DrawableRes int iconFlashOff(); void setFlashModes(List<Integer> modes); boolean shouldHideFlash(); long autoRecordDelay(); boolean audioDisabled(); boolean shouldHideCameraFacing(); boolean showGuide(); }