124069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling/* 224069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * Copyright (C) 2014 The Android Open Source Project 324069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * 424069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * Licensed under the Apache License, Version 2.0 (the "License"); 524069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * you may not use this file except in compliance with the License. 624069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * You may obtain a copy of the License at 724069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * 824069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * http://www.apache.org/licenses/LICENSE-2.0 924069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * 1024069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * Unless required by applicable law or agreed to in writing, software 1124069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * distributed under the License is distributed on an "AS IS" BASIS, 1224069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1324069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * See the License for the specific language governing permissions and 1424069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * limitations under the License. 1524069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling */ 1624069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling 1724069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberlingpackage com.android.camera.session; 1824069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling 1924069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberlingimport android.net.Uri; 204361352633d1e106c1574c02ddd27c8891c5ee78Shashi Shekhar 214361352633d1e106c1574c02ddd27c8891c5ee78Shashi Shekharimport java.io.File; 2224069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling 2324069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling/** 2424069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * Used to store images that belong to the same stack. 2524069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling */ 2624069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberlingpublic interface StackSaver { 2724069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling 2824069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling /** 2924069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * Save a single image from a stack/burst. 3024069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * 314361352633d1e106c1574c02ddd27c8891c5ee78Shashi Shekhar * @param inputImagePath the input image for the image. 3224069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * @param title the title of this image, without the file extension 3324069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * @param width the width of the image in pixels 3424069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * @param height the height of the image in pixels 3524069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * @param imageOrientation the image orientation in degrees 3624069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * @param captureTimeEpoch the capture time in millis since epoch 3724069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * @param mimeType the mime type of the image 3824069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * @return The Uri of the saved image, or null, of the image could not be 3924069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling * saved. 4024069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling */ 414361352633d1e106c1574c02ddd27c8891c5ee78Shashi Shekhar public Uri saveStackedImage(File inputImagePath, String title, int width, int height, 424361352633d1e106c1574c02ddd27c8891c5ee78Shashi Shekhar int imageOrientation, long captureTimeEpoch, String mimeType); 4324069e7a9cc9b4f908f18a71301285ccf5e164f6Sascha Haeberling} 44