12cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk/* 22cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * Copyright (C) 2014 The Android Open Source Project 32cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * 42cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * Licensed under the Apache License, Version 2.0 (the "License"); 52cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * you may not use this file except in compliance with the License. 62cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * You may obtain a copy of the License at 72cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * 82cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * http://www.apache.org/licenses/LICENSE-2.0 92cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * 102cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * Unless required by applicable law or agreed to in writing, software 112cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * distributed under the License is distributed on an "AS IS" BASIS, 122cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 132cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * See the License for the specific language governing permissions and 142cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * limitations under the License. 152cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk */ 162cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk 172cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunkpackage android.hardware.camera2.impl; 182cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk 192cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk/** 202cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * Setter interface for use with Command pattern metadata value setters. 212cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk */ 222cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunkpublic interface SetCommand { 232cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk 242cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk /** 252cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * Set the value in the given metadata. 262cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * 272cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * @param metadata {@link CameraMetadataNative} to set value in. 282cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * @param value value to set. 292cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk * @param <T> type of the value to set. 302cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk */ 312cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk public <T> void setValue(/*inout*/CameraMetadataNative metadata, 322cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk T value); 332cdfa261f44182292d07b7b3b1e9fce8376e4df5Ruben Brunk} 34