You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
CameraView/camerakit/src/main/java/com/otaliastudios/cameraview/CameraController.java

86 lines
2.4 KiB

package com.otaliastudios.cameraview;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import java.io.File;
abstract class CameraController implements Preview.SurfaceCallback {
protected final CameraView.CameraCallbacks mCameraCallbacks;
protected final Preview mPreview;
@Facing protected int mFacing;
@Flash protected int mFlash;
@Focus protected int mFocus;
@VideoQuality protected int mVideoQuality;
@WhiteBalance protected int mWhiteBalance;
@SessionType protected int mSessionType;
CameraController(CameraView.CameraCallbacks callback, Preview preview) {
mCameraCallbacks = callback;
mPreview = preview;
mPreview.setSurfaceCallback(this);
}
abstract void start();
abstract void stop();
abstract void onDisplayOffset(int displayOrientation);
abstract void onDeviceOrientation(int deviceOrientation);
abstract boolean setZoom(float zoom);
abstract boolean setExposureCorrection(float EVvalue);
abstract void setFacing(@Facing int facing);
abstract void setFlash(@Flash int flash);
abstract void setFocus(@Focus int focus);
abstract void setVideoQuality(@VideoQuality int videoQuality);
abstract void setWhiteBalance(@WhiteBalance int whiteBalance);
abstract void setSessionType(@SessionType int sessionType);
abstract void setLocation(double latitude, double longitude);
abstract void capturePicture();
abstract void captureSnapshot();
abstract boolean startVideo(@NonNull File file);
abstract void endVideo();
abstract Size getCaptureSize();
abstract Size getPreviewSize();
abstract boolean shouldFlipSizes(); // Wheter the Sizes should be flipped to match the view orientation.
abstract boolean isCameraOpened();
abstract void startFocus(float x, float y);
@Nullable abstract ExtraProperties getExtraProperties();
@Nullable abstract CameraOptions getCameraOptions();
@Facing
final int getFacing() {
return mFacing;
}
@Flash
final int getFlash() {
return mFlash;
}
@Focus
final int getFocus() {
return mFocus;
}
@WhiteBalance
final int getWhiteBalance() {
return mWhiteBalance;
}
@VideoQuality
final int getVideoQuality() {
return mVideoQuality;
}
@SessionType
final int getSessionType() {
return mSessionType;
}
}