Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / ppapi / api / private / ppb_image_capture_config_private.idl
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.
4  */
5
6 /**
7  * This file defines the PPB_ImageCaptureConfig_Private interface for
8  * establishing an image capture configuration resource within the browser.
9  */
10
11 [generate_thunk]
12
13 label Chrome {
14   M39 = 0.1
15 };
16
17 /**
18  * The <code>PPB_ImageCaptureConfig_Private</code> interface contains pointers
19  * to several functions for establishing image capture configuration within the
20  * browser. The new configuration will take effect after <code>
21  * PPB_ImageCapture_Private.SetConfig</code> is called.
22  */
23 [version=0.1]
24 interface PPB_ImageCaptureConfig_Private {
25   /**
26    * Creates a PPB_ImageCaptureConfig_Private resource.
27    *
28    * @param[in] instance A <code>PP_Instance</code> identifying one instance of
29    * a module.
30    *
31    * @return A <code>PP_Resource</code> corresponding to a
32    * PPB_ImageCaptureConfig_Private resource if successful, 0 if failed.
33    */
34   PP_Resource Create([in] PP_Instance instance);
35
36   /**
37    * IsImageCaptureConfig() determines if the given resource is a
38    * <code>PPB_ImageCaptureConfig_Private</code>.
39    *
40    * @param[in] resource A <code>PP_Resource</code> corresponding to an image
41    * capture config resource.
42    *
43    * @return A <code>PP_Bool</code> containing <code>PP_TRUE</code> if the given
44    * resource is an <code>ImageCaptureConfig_Private</code> resource, otherwise
45    * <code>PP_FALSE</code>.
46    */
47   PP_Bool IsImageCaptureConfig(
48       [in] PP_Resource resource);
49
50   /**
51    * GetPreviewSize() returns the preview image size in pixels for the given
52    * <code>PPB_ImageCaptureConfig_Private</code>.
53    *
54    * @param[in] config A <code>PP_Resource</code> corresponding to an image
55    * capture config resource.
56    * @param[out] preview_size A <code>PP_Size</code> that indicates the
57    * requested preview image size.
58    */
59   void GetPreviewSize(
60       [in] PP_Resource config,
61       [out] PP_Size preview_size);
62
63   /**
64    * SetPreviewSize() sets the preview image size for the given <code>
65    * PPB_ImageCaptureConfig_Private</code>.
66    *
67    * @param[in] config A <code>PP_Resource</code> corresponding to a
68    * <code>PPB_ImageCaptureConfig_Private</code>.
69    * @param[in] preview_size A <code>PP_Size</code> that indicates the requested
70    * preview image size.
71    */
72   void SetPreviewSize(
73       [in] PP_Resource config,
74       [in] PP_Size preview_size);
75
76   /**
77    * GetJpegSize() returns the JPEG image size in pixels for the given
78    * <code>PPB_ImageCaptureConfig_Private</code>.
79    *
80    * @param[in] config A <code>PP_Resource</code> corresponding to an image
81    * capture config resource.
82    * @param[out] jpeg_size A <code>PP_Size</code> that indicates the current
83    * JPEG image size.
84    */
85   void GetJpegSize(
86       [in] PP_Resource config,
87       [out] PP_Size jpeg_size);
88
89   /**
90    * SetJpegSize() sets the JPEG image size for the given
91    * <code>PPB_ImageCaptureConfig_Private</code>.
92    *
93    * @param[in] config A <code>PP_Resource</code> corresponding to a
94    * <code>PPB_ImageCaptureConfig_Private</code>.
95    * @param[in] jpeg_size A <code>PP_Size</code> that indicates the requested
96    * JPEG image size.
97    */
98   void SetJpegSize(
99       [in] PP_Resource config,
100       [in] PP_Size jpeg_size);
101 };