diff options
Diffstat (limited to 'ppapi/cpp/private/camera_capabilities_private.h')
-rw-r--r-- | ppapi/cpp/private/camera_capabilities_private.h | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/ppapi/cpp/private/camera_capabilities_private.h b/ppapi/cpp/private/camera_capabilities_private.h new file mode 100644 index 0000000..5151c75 --- /dev/null +++ b/ppapi/cpp/private/camera_capabilities_private.h @@ -0,0 +1,83 @@ +/* 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. + */ + +#ifndef PPAPI_CPP_PRIVATE_CAMERA_CAPABILITIES_PRIVATE_H_ +#define PPAPI_CPP_PRIVATE_CAMERA_CAPABILITIES_PRIVATE_H_ + +#include "ppapi/c/private/ppb_camera_capabilities_private.h" +#include "ppapi/cpp/resource.h" +#include "ppapi/cpp/size.h" + +/// @file +/// This file defines the CameraCapabilities_Private interface for +/// establishing an image capture configuration resource within the browser. +namespace pp { + +/// The <code>CameraCapabilities_Private</code> interface contains methods for +/// getting the image capture capabilities within the browser. +class CameraCapabilities_Private : public Resource { + public: + /// Default constructor for creating an is_null() + /// <code>CameraCapabilities_Private</code> object. + CameraCapabilities_Private(); + + /// The copy constructor for <code>CameraCapabilities_Private</code>. + /// + /// @param[in] other A reference to a <code>CameraCapabilities_Private + /// </code>. + CameraCapabilities_Private(const CameraCapabilities_Private& other); + + /// Constructs a <code>CameraCapabilities_Private</code> from a <code> + /// Resource</code>. + /// + /// @param[in] resource A <code>PPB_CameraCapabilities_Private</code> + /// resource. + explicit CameraCapabilities_Private(const Resource& resource); + + /// Constructs a <code>CameraCapabilities_Private</code> object. + /// + /// @param[in] instance The instance with which this resource will be + /// associated. + explicit CameraCapabilities_Private(const InstanceHandle& instance); + + /// A constructor used when you have received a <code>PP_Resource</code> as a + /// return value that has had 1 ref added for you. + /// + /// @param[in] resource A <code>PPB_CameraCapabilities_Private</code> + /// resource. + CameraCapabilities_Private(PassRef, PP_Resource resource); + + // Destructor. + ~CameraCapabilities_Private(); + + /// GetSupportedPreviewSizes() returns the supported preview sizes for the + /// given <code>CameraCapabilities_Private</code>. + /// + /// @param[out] A vector of <code>Size</code> corresponding to the + /// supported preview sizes in pixels. + void GetSupportedPreviewSizes(std::vector<Size>* preview_sizes); + + /// GetSupportedJpegSize() returns the supported JPEG sizes for the given + /// <code>CameraCapabilities_Private</code>. + /// + /// @param[out] A vector of <code>Size</code> corresponding to the + /// supported JPEG image sizes in pixels. + void GetSupportedJpegSizes(std::vector<Size>* jpeg_sizes); + + /// IsCameraCapabilities() determines if the given resource is a + /// <code>CameraCapabilities_Private</code>. + /// + /// @param[in] resource A <code>Resource</code> corresponding to an image + /// capture capabilities resource. + /// + /// @return true if the given resource is an <code> + /// CameraCapabilities_Private</code> resource, otherwise false. + static bool IsCameraCapabilities(const Resource& resource); +}; + +} // namespace pp + +#endif /* PPAPI_CPP_PRIVATE_CAMERA_CAPABILITIES_PRIVATE_H_ */ + |