1 /* Copyright 2014 The Chromium Authors. All rights reserved.
2 * Use of this source code is governed by a BSD-style license that can be
3 * found in the LICENSE file.
7 * This file defines the PPB_CameraCapabilities_Private interface for
8 * establishing an image capture configuration resource within the browser.
18 * The <code>PPB_CameraCapabilities_Private</code> interface contains pointers
19 * to several functions for getting the image capture capabilities within the
23 interface PPB_CameraCapabilities_Private
{
25 * Creates a PPB_CameraCapabilities_Private resource.
27 * @param[in] instance A <code>PP_Instance</code> identifying one instance of
30 * @return A <code>PP_Resource</code> corresponding to a
31 * PPB_CameraCapabilities_Private resource if successful, 0 if failed.
33 PP_Resource Create
([in] PP_Instance instance
);
36 * IsCameraCapabilities() determines if the given resource is a
37 * <code>PPB_CameraCapabilities_Private</code>.
39 * @param[in] resource A <code>PP_Resource</code> corresponding to an image
40 * capture capabilities resource.
42 * @return A <code>PP_Bool</code> containing <code>PP_TRUE</code> if the given
43 * resource is an <code>PP_CameraCapabilities_Private</code> resource,
44 * otherwise <code>PP_FALSE</code>.
46 PP_Bool IsCameraCapabilities
(
47 [in] PP_Resource resource
);
50 * GetSupportedPreviewSizes() returns the supported preview sizes for the
51 * given <code>PPB_CameraCapabilities_Private</code>.
53 * @param[in] capabilities A <code>PP_Resource</code> corresponding to an
54 * image capture capabilities resource.
55 * @param[out] array_size The size of preview size array.
56 * @param[out] preview_sizes An array of <code>PP_Size</code> corresponding
57 * to the supported preview sizes in pixels. The ownership of the array
58 * belongs to <code>PPB_CameraCapabilities_Private</code> and the caller
59 * should not free it. When a PPB_CameraCapabilities_Private is deleted,
60 * the array returning from this is no longer valid.
62 void GetSupportedPreviewSizes
(
63 [in] PP_Resource capabilities
,
64 [out] int32_t array_size
,
65 [out, size_is(array_size
)] PP_Size
[] preview_sizes
);
68 * GetSupportedJpegSize() returns the supported JPEG sizes for the given
69 * <code>PPB_CameraCapabilities_Private</code>.
71 * @param[in] capabilities A <code>PP_Resource</code> corresponding to an
72 * image capture capabilities resource.
73 * @param[out] array_size The size of JPEG size array. If the output of this
74 * is 0, the camera has no support for generating JPEG images.
75 * @param[out] jpeg_sizes An array of <code>PP_Size</code> corresponding to
76 * the supported JPEG image sizes in pixels. The ownership of the array
77 * belongs to <code>PPB_CameraCapabilities_Private</code> and the caller
78 * should not free it. When a PPB_CameraCapabilities_Private is deleted, the
79 * array returning from this is no longer valid.
81 void GetSupportedJpegSizes
(
82 [in] PP_Resource capabilities
,
83 [out] int32_t array_size
,
84 [out, size_is(array_size
)] PP_Size
[] jpeg_sizes
);