#include "base/memory/scoped_ptr.h"
#include "base/memory/weak_ptr.h"
#include "cc/base/cc_export.h"
-#include "cc/base/rolling_time_delta_history.h"
-#include "cc/output/begin_frame_args.h"
#include "cc/output/context_provider.h"
#include "cc/output/overlay_candidate_validator.h"
#include "cc/output/software_output_device.h"
return software_device_.get();
}
- // In the case where both the context3d and software_device are present
- // (namely Android WebView), this is called to determine whether the software
- // device should be used on the current frame.
- virtual bool ForcedDrawToSoftwareDevice() const;
-
// Called by the compositor on the compositor thread. This is a place where
// thread-specific data for the output surface can be initialized, since from
// this point on the output surface will only be used on the compositor
bool HasClient() { return !!client_; }
- // Returns an estimate of the current GPU latency. When only a software
- // device is present, returns 0.
- base::TimeDelta GpuLatencyEstimate();
-
// Get the class capable of informing cc of hardware overlay capability.
OverlayCandidateValidator* overlay_candidate_validator() const {
return overlay_candidate_validator_.get();
void ReclaimResources(const CompositorFrameAck* ack);
void DidLoseOutputSurface();
void SetExternalStencilTest(bool enabled);
- void SetExternalDrawConstraints(const gfx::Transform& transform,
- const gfx::Rect& viewport,
- const gfx::Rect& clip,
- bool valid_for_tile_management);
+ void SetExternalDrawConstraints(
+ const gfx::Transform& transform,
+ const gfx::Rect& viewport,
+ const gfx::Rect& clip,
+ const gfx::Rect& viewport_rect_for_tile_priority,
+ const gfx::Transform& transform_for_tile_priority,
+ bool resourceless_software_draw);
private:
void SetUpContext3d();
void ResetContext3d();
void SetMemoryPolicy(const ManagedMemoryPolicy& policy);
- void UpdateAndMeasureGpuLatency();
bool external_stencil_test_enabled_;
base::WeakPtrFactory<OutputSurface> weak_ptr_factory_;
- std::deque<unsigned> available_gpu_latency_query_ids_;
- std::deque<unsigned> pending_gpu_latency_query_ids_;
- RollingTimeDeltaHistory gpu_latency_history_;
-
DISALLOW_COPY_AND_ASSIGN(OutputSurface);
};