/* Copyright 2014 The Chromium Authors. All rights reserved. * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ /** * This file defines the PPB_CameraCapabilities_Private interface for * establishing an image capture configuration resource within the browser. */ [generate_thunk] label Chrome { M39 = 0.1 }; /** * The PPB_CameraCapabilities_Private interface contains pointers * to several functions for getting the image capture capabilities within the * browser. */ [version=0.1] interface PPB_CameraCapabilities_Private { /** * Creates a PPB_CameraCapabilities_Private resource. * * @param[in] instance A PP_Instance identifying one instance of * a module. * * @return A PP_Resource corresponding to a * PPB_CameraCapabilities_Private resource if successful, 0 if failed. */ PP_Resource Create([in] PP_Instance instance); /** * IsCameraCapabilities() determines if the given resource is a * PPB_CameraCapabilities_Private. * * @param[in] resource A PP_Resource corresponding to an image * capture capabilities resource. * * @return A PP_Bool containing PP_TRUE if the given * resource is an PP_CameraCapabilities_Private resource, * otherwise PP_FALSE. */ PP_Bool IsCameraCapabilities( [in] PP_Resource resource); /** * GetSupportedPreviewSizes() returns the supported preview sizes for the * given PPB_CameraCapabilities_Private. * * @param[in] capabilities A PP_Resource corresponding to an * image capture capabilities resource. * @param[out] array_size The size of preview size array. * @param[out] preview_sizes An array of PP_Size corresponding * to the supported preview sizes in pixels. The ownership of the array * belongs to PPB_CameraCapabilities_Private and the caller * should not free it. When a PPB_CameraCapabilities_Private is deleted, * the array returning from this is no longer valid. */ void GetSupportedPreviewSizes( [in] PP_Resource capabilities, [out] int32_t array_size, [out, size_is(array_size)] PP_Size[] preview_sizes); /** * GetSupportedJpegSize() returns the supported JPEG sizes for the given * PPB_CameraCapabilities_Private. * * @param[in] capabilities A PP_Resource corresponding to an * image capture capabilities resource. * @param[out] array_size The size of JPEG size array. If the output of this * is 0, the camera has no support for generating JPEG images. * @param[out] jpeg_sizes An array of PP_Size corresponding to * the supported JPEG image sizes in pixels. The ownership of the array * belongs to PPB_CameraCapabilities_Private and the caller * should not free it. When a PPB_CameraCapabilities_Private is deleted, the * array returning from this is no longer valid. */ void GetSupportedJpegSizes( [in] PP_Resource capabilities, [out] int32_t array_size, [out, size_is(array_size)] PP_Size[] jpeg_sizes); };