| OLD | NEW | 
|    1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |    1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
|    2 // Use of this source code is governed by a BSD-style license that can be |    2 // Use of this source code is governed by a BSD-style license that can be | 
|    3 // found in the LICENSE file. |    3 // found in the LICENSE file. | 
|    4  |    4  | 
|    5 #ifndef CHROMEOS_DISPLAY_OUTPUT_CONFIGURATOR_H_ |    5 #ifndef CHROMEOS_DISPLAY_OUTPUT_CONFIGURATOR_H_ | 
|    6 #define CHROMEOS_DISPLAY_OUTPUT_CONFIGURATOR_H_ |    6 #define CHROMEOS_DISPLAY_OUTPUT_CONFIGURATOR_H_ | 
|    7  |    7  | 
|    8 #include <map> |    8 #include <map> | 
|    9 #include <string> |    9 #include <string> | 
|   10 #include <vector> |   10 #include <vector> | 
| (...skipping 407 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  418  |  418  | 
|  419   // Requests the desired protection methods. |  419   // Requests the desired protection methods. | 
|  420   // |protection_mask| is the desired protection methods, which is a bitmask |  420   // |protection_mask| is the desired protection methods, which is a bitmask | 
|  421   // of the OutputProtectionMethod values. |  421   // of the OutputProtectionMethod values. | 
|  422   // Returns true when the protection request has been made. |  422   // Returns true when the protection request has been made. | 
|  423   bool EnableOutputProtection( |  423   bool EnableOutputProtection( | 
|  424       OutputProtectionClientId client_id, |  424       OutputProtectionClientId client_id, | 
|  425       int64 display_id, |  425       int64 display_id, | 
|  426       uint32_t desired_protection_mask); |  426       uint32_t desired_protection_mask); | 
|  427  |  427  | 
 |  428   // Updates number of active screen sharing sessions. | 
 |  429   void SetScreenSharingCount(int screen_sharing_count); | 
 |  430  | 
|  428  private: |  431  private: | 
|  429   // Mapping a display_id to a protection request bitmask. |  432   // Mapping a display_id to a protection request bitmask. | 
|  430   typedef std::map<int64, uint32_t> DisplayProtections; |  433   typedef std::map<int64, uint32_t> DisplayProtections; | 
|  431   // Mapping a client to its protection request. |  434   // Mapping a client to its protection request. | 
|  432   typedef std::map<OutputProtectionClientId, |  435   typedef std::map<OutputProtectionClientId, | 
|  433                    DisplayProtections> ProtectionRequests; |  436                    DisplayProtections> ProtectionRequests; | 
|  434  |  437  | 
|  435   // Updates |cached_outputs_| to contain currently-connected outputs. Calls |  438   // Updates |cached_outputs_| to contain currently-connected outputs. Calls | 
|  436   // |delegate_->GetOutputs()| and then does additional work, like finding the |  439   // |delegate_->GetOutputs()| and then does additional work, like finding the | 
|  437   // mirror mode and setting user-preferred modes. Note that the server must be |  440   // mirror mode and setting user-preferred modes. Note that the server must be | 
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  495       int frame_buffer_height); |  498       int frame_buffer_height); | 
|  496  |  499  | 
|  497   // Returns the ratio between mirrored mode area and native mode area: |  500   // Returns the ratio between mirrored mode area and native mode area: | 
|  498   // (mirror_mode_width * mirrow_mode_height) / (native_width * native_height) |  501   // (mirror_mode_width * mirrow_mode_height) / (native_width * native_height) | 
|  499   float GetMirroredDisplayAreaRatio( |  502   float GetMirroredDisplayAreaRatio( | 
|  500       const OutputConfigurator::OutputSnapshot& output); |  503       const OutputConfigurator::OutputSnapshot& output); | 
|  501  |  504  | 
|  502   // Applies output protections according to requests. |  505   // Applies output protections according to requests. | 
|  503   bool ApplyProtections(const DisplayProtections& requests); |  506   bool ApplyProtections(const DisplayProtections& requests); | 
|  504  |  507  | 
 |  508   // Determines if we are projecting to an external display. | 
 |  509   bool IsProjecting() const; | 
 |  510  | 
|  505   StateController* state_controller_; |  511   StateController* state_controller_; | 
|  506   SoftwareMirroringController* mirroring_controller_; |  512   SoftwareMirroringController* mirroring_controller_; | 
|  507   scoped_ptr<Delegate> delegate_; |  513   scoped_ptr<Delegate> delegate_; | 
|  508  |  514  | 
|  509   // Used to enable modes which rely on panel fitting. |  515   // Used to enable modes which rely on panel fitting. | 
|  510   bool is_panel_fitting_enabled_; |  516   bool is_panel_fitting_enabled_; | 
|  511  |  517  | 
|  512   // Key of the map is the touch display's id, and the value of the map is the |  518   // Key of the map is the touch display's id, and the value of the map is the | 
|  513   // touch display's area ratio in mirror mode defined as : |  519   // touch display's area ratio in mirror mode defined as : | 
|  514   // mirror_mode_area / native_mode_area. |  520   // mirror_mode_area / native_mode_area. | 
| (...skipping 28 matching lines...) Expand all  Loading... | 
|  543   // The timer to delay configuring outputs. See also the comments in |  549   // The timer to delay configuring outputs. See also the comments in | 
|  544   // Dispatch(). |  550   // Dispatch(). | 
|  545   scoped_ptr<base::OneShotTimer<OutputConfigurator> > configure_timer_; |  551   scoped_ptr<base::OneShotTimer<OutputConfigurator> > configure_timer_; | 
|  546  |  552  | 
|  547   // Id for next output protection client. |  553   // Id for next output protection client. | 
|  548   OutputProtectionClientId next_output_protection_client_id_; |  554   OutputProtectionClientId next_output_protection_client_id_; | 
|  549  |  555  | 
|  550   // Output protection requests of each client. |  556   // Output protection requests of each client. | 
|  551   ProtectionRequests client_protection_requests_; |  557   ProtectionRequests client_protection_requests_; | 
|  552  |  558  | 
 |  559   // Number of outstanding screen sharing sessions. | 
 |  560   int screen_sharing_count_; | 
 |  561  | 
|  553   DISALLOW_COPY_AND_ASSIGN(OutputConfigurator); |  562   DISALLOW_COPY_AND_ASSIGN(OutputConfigurator); | 
|  554 }; |  563 }; | 
|  555  |  564  | 
|  556 typedef std::vector<OutputConfigurator::OutputSnapshot> OutputSnapshotList; |  565 typedef std::vector<OutputConfigurator::OutputSnapshot> OutputSnapshotList; | 
|  557  |  566  | 
|  558 }  // namespace chromeos |  567 }  // namespace chromeos | 
|  559  |  568  | 
|  560 #endif  // CHROMEOS_DISPLAY_OUTPUT_CONFIGURATOR_H_ |  569 #endif  // CHROMEOS_DISPLAY_OUTPUT_CONFIGURATOR_H_ | 
| OLD | NEW |