/* The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. The Original Code is collection of files collectively known as Open Camera. The Initial Developer of the Original Code is Almalence Inc. Portions created by Initial Developer are Copyright (C) 2013 by Almalence Inc. All Rights Reserved. */ /* <!-- +++ package com.almalence.opencam_plus; +++ --> */ // <!-- -+- package com.almalence.opencam; //-+- --> import android.hardware.camera2.CaptureResult; //PluginManagerInterface used by Camera Controller to communicate with appluication's plugins public interface PluginManagerInterface { //Ask current capture plugin to select desire image size public void selectImageDimension(); //Call to ask plugins to choose desire default camera parameters values public void selectDefaults(); public boolean shouldPreviewToGPU(); //Callback of auto focus public void onAutoFocus(boolean focused); public void onAutoFocusMoving(boolean start); //Callback for camera's preview frames public void onPreviewFrame(byte[] data); //Callback for captured still images public void onImageTaken(int frame, byte[] frameData, int frame_len, int format); //Callback for CaptureResult (used in camera2 mode) public void onCaptureCompleted(CaptureResult result); //Pass captured frame data to let plugins extract desired exif data public void collectExifData(byte[] frameData); //In case of multishot capturing pass to plugin id of current capture request public void addRequestID(int nFrame, int requestID); public boolean isPreviewDependentMode(); public boolean needPreviewFrame(); //Check if current device is allowed to use camera2 interface //At that time we limit numbers of devices which may use camera2 interface public boolean isCamera2InterfaceAllowed(); }