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.
6 /* From private/ppb_camera_capabilities_private.idl,
7 * modified Thu Feb 19 09:06:18 2015.
10 #ifndef PPAPI_C_PRIVATE_PPB_CAMERA_CAPABILITIES_PRIVATE_H_
11 #define PPAPI_C_PRIVATE_PPB_CAMERA_CAPABILITIES_PRIVATE_H_
13 #include "ppapi/c/pp_bool.h"
14 #include "ppapi/c/pp_macros.h"
15 #include "ppapi/c/pp_resource.h"
16 #include "ppapi/c/pp_size.h"
17 #include "ppapi/c/pp_stdint.h"
18 #include "ppapi/c/private/pp_video_capture_format.h"
20 #define PPB_CAMERACAPABILITIES_PRIVATE_INTERFACE_0_1 \
21 "PPB_CameraCapabilities_Private;0.1"
22 #define PPB_CAMERACAPABILITIES_PRIVATE_INTERFACE \
23 PPB_CAMERACAPABILITIES_PRIVATE_INTERFACE_0_1
27 * This file defines the PPB_CameraCapabilities_Private interface for
28 * establishing an image capture configuration resource within the browser.
33 * @addtogroup Interfaces
37 * The <code>PPB_CameraCapabilities_Private</code> interface contains pointers
38 * to several functions for getting the image capture capabilities within the
41 struct PPB_CameraCapabilities_Private_0_1
{
43 * IsCameraCapabilities() determines if the given resource is a
44 * <code>PPB_CameraCapabilities_Private</code>.
46 * @param[in] resource A <code>PP_Resource</code> corresponding to an image
47 * capture capabilities resource.
49 * @return A <code>PP_Bool</code> containing <code>PP_TRUE</code> if the given
50 * resource is an <code>PP_CameraCapabilities_Private</code> resource,
51 * otherwise <code>PP_FALSE</code>.
53 PP_Bool (*IsCameraCapabilities
)(PP_Resource resource
);
55 * GetSupportedVideoCaptureFormats() returns the supported video capture
56 * formats for the given <code>PPB_CameraCapabilities_Private</code>.
58 * @param[in] capabilities A <code>PP_Resource</code> corresponding to an
59 * image capture capabilities resource.
60 * @param[out] array_size The size of preview size array.
61 * @param[out] formats An array of <code>PP_VideoCaptureFormat</code>
62 * corresponding to the supported video capture formats. The ownership of the
63 * array belongs to <code>PPB_CameraCapabilities_Private</code> and the caller
64 * should not free it. When a PPB_CameraCapabilities_Private is deleted, the
65 * array returning from this is no longer valid.
67 void (*GetSupportedVideoCaptureFormats
)(
68 PP_Resource capabilities
,
70 struct PP_VideoCaptureFormat
** formats
);
73 typedef struct PPB_CameraCapabilities_Private_0_1
74 PPB_CameraCapabilities_Private
;
79 #endif /* PPAPI_C_PRIVATE_PPB_CAMERA_CAPABILITIES_PRIVATE_H_ */