| /* 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 <vector> | |
| #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); | |
| /// 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(); | |
| /// GetSupportedVideoCaptureFormats() returns the supported video capture | |
| /// formats. | |
| /// | |
| /// @param[out] formats A vector of <code>PP_VideoCaptureFormat</code> | |
| /// corresponding to the supported video capture formats. This output vector | |
| /// must be prepared by the caller beforehand. | |
| void GetSupportedVideoCaptureFormats( | |
| std::vector<PP_VideoCaptureFormat>* formats); | |
| /// 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_ */ |