Index: chromeos/display/output_configurator.h |
diff --git a/chromeos/display/output_configurator.h b/chromeos/display/output_configurator.h |
index 5891785381cb22161e41415a98e62b8fd00679b1..6aac0a0635beca23d35b14bf48b5d2c263c9020a 100644 |
--- a/chromeos/display/output_configurator.h |
+++ b/chromeos/display/output_configurator.h |
@@ -25,6 +25,10 @@ typedef XID RROutput; |
typedef XID RRCrtc; |
typedef XID RRMode; |
+namespace chrome { |
+class PepperOutputProtectionHost; |
+} // namespace chrome |
+ |
namespace chromeos { |
// Used to describe the state of a multi-display configuration. |
@@ -218,6 +222,18 @@ class CHROMEOS_EXPORT OutputConfigurator |
// Sends a D-Bus message to the power manager telling it that the |
// machine is or is not projecting. |
virtual void SendProjectingStateToPowerManager(bool projecting) = 0; |
+ |
+ // Query link status and protection status. Returns true on success. |
+ virtual bool QueryOutputProtectionStatus( |
+ chrome::PepperOutputProtectionHost* client, |
+ uint32_t* link_mask, |
+ uint32_t* protection_mask) = 0; |
+ |
+ // Set desired protection methods. Returns true when the protection request |
+ // has been made. |
+ virtual bool EnableOutputProtection( |
+ chrome::PepperOutputProtectionHost* client, |
+ uint32_t desired_method_mask) = 0; |
}; |
// Helper class used by tests. |
@@ -348,6 +364,25 @@ class CHROMEOS_EXPORT OutputConfigurator |
// so that time-consuming ConfigureOutputs() won't be called multiple times. |
void ScheduleConfigureOutputs(); |
+ // Query link status and protection status. |
+ // |link_mask| is the type of connected output links, which is a bit-mask |
+ // of PP_OutputProtectionLinkType_Private values. |protection_mask| is the |
+ // desired protection methods, which is a bit-mask of the |
+ // PP_OutputProtectionMethod_Private values. |
+ // Returns true on success. |
+ virtual bool QueryOutputProtectionStatus( |
+ chrome::PepperOutputProtectionHost* client, |
dmichael (off chromium)
2013/09/09 20:37:15
should this be const? Same question for |client| i
kcwu
2013/09/10 12:50:21
Done.
|
+ uint32_t* link_mask, |
+ uint32_t* protection_mask); |
+ |
+ // Set desired protection methods. |
+ // |protection_mask| is the desired protection methods, which is a bit-mask |
+ // of the PP_OutputProtectionMethod_Private values. |
+ // Returns true when the protection request has been made. |
+ virtual bool EnableOutputProtection( |
+ chrome::PepperOutputProtectionHost* client, |
+ uint32_t desired_method_mask); |
+ |
private: |
// Configure outputs. |
void ConfigureOutputs(); |