15fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu/* 25fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * Copyright (C) 2015 The Android Open Source Project 35fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * 45fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * Licensed under the Apache License, Version 2.0 (the "License"); 55fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * you may not use this file except in compliance with the License. 65fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * You may obtain a copy of the License at 75fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * 85fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * http://www.apache.org/licenses/LICENSE-2.0 95fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * 105fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * Unless required by applicable law or agreed to in writing, software 115fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * distributed under the License is distributed on an "AS IS" BASIS, 125fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 135fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * See the License for the specific language governing permissions and 145fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * limitations under the License. 155fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu */ 165fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu 175fb629902527b7c688358ece3ef1f181322fc2abSenpo Hupackage com.android.camera.session; 185fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu 195fb629902527b7c688358ece3ef1f181322fc2abSenpo Huimport android.location.Location; 205fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu 215fb629902527b7c688358ece3ef1f181322fc2abSenpo Hupublic interface CaptureSessionFactory { 225fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu /** 235fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * Creates a new capture session. 245fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * 255fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * @param sessionManager the capture session manager. 26f0ff1a9aa44d04f680af7cec8b97c3b01d3e76bdSascha Haeberling * @param sessionNotifier used to notify about updates to the status of a 27f0ff1a9aa44d04f680af7cec8b97c3b01d3e76bdSascha Haeberling * session. 285fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * @param title the title of the new session. 29f0ff1a9aa44d04f680af7cec8b97c3b01d3e76bdSascha Haeberling * @param sessionStartMillis the start time of the new session (millis since 30f0ff1a9aa44d04f680af7cec8b97c3b01d3e76bdSascha Haeberling * epoch). 315fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu * @param location the location of the new session. 325fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu */ 33f0ff1a9aa44d04f680af7cec8b97c3b01d3e76bdSascha Haeberling public CaptureSession createNewSession(CaptureSessionManager sessionManager, 34f0ff1a9aa44d04f680af7cec8b97c3b01d3e76bdSascha Haeberling SessionNotifier sessionNotifier, String title, 355fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu long sessionStartMillis, Location location); 365fb629902527b7c688358ece3ef1f181322fc2abSenpo Hu} 37