/* * Copyright (c) 2024 Huawei Device Co., Ltd. * Licensed under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /** * @file istream_operator_callback.h * * @brief Declares callbacks related to {@link IStreamOperator}. The caller needs to implement these callbacks. * * @since 5.0 * @version 1.3 */ package ohos.hdi.camera.v1_3; import ohos.hdi.camera.v1_3.Types; [callback] interface IStreamOperatorCallback extends ohos.hdi.camera.v1_2.IStreamOperatorCallback { /** * @brief Called when the next capture get ready. * * @param captureId Indicates the ID of the capture request corresponding to the callback. * @param streamIds Indicates the IDs of the streams corresponding to the callback. * @Param timestamp Indicates the timestamp when the callback is invoked. * * @since 5.0 * @version 1.3 */ OnCaptureReady([in] int captureId, [in] int[] streamIds, [in] unsigned long timestamp); /** * @brief Called when the frameShutter ends. * * @param captureId Indicates the ID of the capture request corresponding to the callback. * @param streamIds Indicates the IDs of the streams corresponding to the callback. * @Param timestamp Indicates the timestamp when the callback is invoked. * * @since 5.0 * @version 1.3 */ OnFrameShutterEnd([in] int captureId, [in] int[] streamIds, [in] unsigned long timestamp); /** * @brief Called when the capture ends. * * @param captureId Indicates the ID of the capture request corresponding to the callback. * @param infos Indicates information related to the capture when it ends. * * @since 5.0 * @version 1.0 */ OnCaptureEndedExt([in] int captureId, [in] struct CaptureEndedInfoExt[] infos); /** * @brief Called to report metadata and other information related to the stream. * For details about the reporting mode, see {@link SetResultMode}. * * @param streamId Indicates the ID of the stream related to metadata is reported. * @param result Indicates the metadata and other information reported. * The reported metadata and other information are specified by {@link EnableResult}. * You can call {@link DisableResult} to disable metadata and other information reporting. * * @since 5.0 * @version 1.0 */ OnResult([in] int streamId, [in] unsigned char[] result); }