projects
/
platform
/
framework
/
web
/
crosswalk.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git]
/
src
/
cc
/
quads
/
render_pass.cc
diff --git
a/src/cc/quads/render_pass.cc
b/src/cc/quads/render_pass.cc
index
43bb7cd
..
e487c09
100644
(file)
--- a/
src/cc/quads/render_pass.cc
+++ b/
src/cc/quads/render_pass.cc
@@
-13,6
+13,7
@@
#include "cc/quads/debug_border_draw_quad.h"
#include "cc/quads/draw_quad.h"
#include "cc/quads/io_surface_draw_quad.h"
#include "cc/quads/debug_border_draw_quad.h"
#include "cc/quads/draw_quad.h"
#include "cc/quads/io_surface_draw_quad.h"
+#include "cc/quads/largest_draw_quad.h"
#include "cc/quads/picture_draw_quad.h"
#include "cc/quads/render_pass_draw_quad.h"
#include "cc/quads/shared_quad_state.h"
#include "cc/quads/picture_draw_quad.h"
#include "cc/quads/render_pass_draw_quad.h"
#include "cc/quads/shared_quad_state.h"
@@
-30,10
+31,9
@@
const size_t kDefaultNumQuadsToReserve = 128;
namespace cc {
namespace cc {
-void* RenderPass::Id::AsTracingId() const {
- COMPILE_ASSERT(sizeof(size_t) <= sizeof(void*), // NOLINT
- size_t_bigger_than_pointer);
- return reinterpret_cast<void*>(base::HashPair(layer_id, index));
+QuadList::QuadList(size_t default_size_to_reserve)
+ : ListContainer<DrawQuad>(sizeof(kLargestDrawQuad),
+ default_size_to_reserve) {
}
scoped_ptr<RenderPass> RenderPass::Create() {
}
scoped_ptr<RenderPass> RenderPass::Create() {
@@
-44,17
+44,20
@@
scoped_ptr<RenderPass> RenderPass::Create(size_t num_layers) {
return make_scoped_ptr(new RenderPass(num_layers));
}
return make_scoped_ptr(new RenderPass(num_layers));
}
-RenderPass::RenderPass() : id(Id(-1, -1)), has_transparent_background(true) {
+RenderPass::RenderPass()
+ : id(RenderPassId(-1, -1)),
+ has_transparent_background(true),
+ quad_list(kDefaultNumQuadsToReserve) {
shared_quad_state_list.reserve(kDefaultNumSharedQuadStatesToReserve);
shared_quad_state_list.reserve(kDefaultNumSharedQuadStatesToReserve);
- quad_list.reserve(kDefaultNumQuadsToReserve);
}
RenderPass::RenderPass(size_t num_layers)
}
RenderPass::RenderPass(size_t num_layers)
- : id(Id(-1, -1)), has_transparent_background(true) {
+ : id(RenderPassId(-1, -1)),
+ has_transparent_background(true),
+ quad_list(kDefaultNumQuadsToReserve) {
// Each layer usually produces one shared quad state, so the number of layers
// is a good hint for what to reserve here.
shared_quad_state_list.reserve(num_layers);
// Each layer usually produces one shared quad state, so the number of layers
// is a good hint for what to reserve here.
shared_quad_state_list.reserve(num_layers);
- quad_list.reserve(kDefaultNumQuadsToReserve);
}
RenderPass::~RenderPass() {
}
RenderPass::~RenderPass() {
@@
-63,7
+66,7
@@
RenderPass::~RenderPass() {
"cc::RenderPass", id.AsTracingId());
}
"cc::RenderPass", id.AsTracingId());
}
-scoped_ptr<RenderPass> RenderPass::Copy(Id new_id) const {
+scoped_ptr<RenderPass> RenderPass::Copy(
RenderPass
Id new_id) const {
scoped_ptr<RenderPass> copy_pass(Create());
copy_pass->SetAll(new_id,
output_rect,
scoped_ptr<RenderPass> copy_pass(Create());
copy_pass->SetAll(new_id,
output_rect,
@@
-94,16
+97,17
@@
void RenderPass::CopyAll(const ScopedPtrVector<RenderPass>& in,
copy_pass->CreateAndAppendSharedQuadState();
copy_shared_quad_state->CopyFrom(source->shared_quad_state_list[i]);
}
copy_pass->CreateAndAppendSharedQuadState();
copy_shared_quad_state->CopyFrom(source->shared_quad_state_list[i]);
}
- for (size_t i = 0, sqs_i = 0; i < source->quad_list.size(); ++i) {
- while (source->quad_list[i]->shared_quad_state !=
- source->shared_quad_state_list[sqs_i]) {
+ size_t sqs_i = 0;
+ for (QuadList::Iterator iter = source->quad_list.begin();
+ iter != source->quad_list.end();
+ ++iter) {
+ while (iter->shared_quad_state != source->shared_quad_state_list[sqs_i]) {
++sqs_i;
DCHECK_LT(sqs_i, source->shared_quad_state_list.size());
}
++sqs_i;
DCHECK_LT(sqs_i, source->shared_quad_state_list.size());
}
- DCHECK(source->quad_list[i]->shared_quad_state ==
- source->shared_quad_state_list[sqs_i]);
+ DCHECK(iter->shared_quad_state == source->shared_quad_state_list[sqs_i]);
- DrawQuad* quad =
source->quad_list[i]
;
+ DrawQuad* quad =
&*iter
;
if (quad->material == DrawQuad::RENDER_PASS) {
const RenderPassDrawQuad* pass_quad =
if (quad->material == DrawQuad::RENDER_PASS) {
const RenderPassDrawQuad* pass_quad =
@@
-121,7
+125,7
@@
void RenderPass::CopyAll(const ScopedPtrVector<RenderPass>& in,
}
}
}
}
-void RenderPass::SetNew(Id id,
+void RenderPass::SetNew(
RenderPass
Id id,
const gfx::Rect& output_rect,
const gfx::Rect& damage_rect,
const gfx::Transform& transform_to_root_target) {
const gfx::Rect& output_rect,
const gfx::Rect& damage_rect,
const gfx::Transform& transform_to_root_target) {
@@
-140,7
+144,7
@@
void RenderPass::SetNew(Id id,
DCHECK(shared_quad_state_list.empty());
}
DCHECK(shared_quad_state_list.empty());
}
-void RenderPass::SetAll(Id id,
+void RenderPass::SetAll(
RenderPass
Id id,
const gfx::Rect& output_rect,
const gfx::Rect& damage_rect,
const gfx::Transform& transform_to_root_target,
const gfx::Rect& output_rect,
const gfx::Rect& damage_rect,
const gfx::Transform& transform_to_root_target,
@@
-179,9
+183,11
@@
void RenderPass::AsValueInto(base::debug::TracedValue* value) const {
value->EndArray();
value->BeginArray("quad_list");
value->EndArray();
value->BeginArray("quad_list");
- for (size_t i = 0; i < quad_list.size(); ++i) {
+ for (QuadList::ConstIterator iter = quad_list.begin();
+ iter != quad_list.end();
+ ++iter) {
value->BeginDictionary();
value->BeginDictionary();
-
quad_list[i]
->AsValueInto(value);
+
iter
->AsValueInto(value);
value->EndDictionary();
}
value->EndArray();
value->EndDictionary();
}
value->EndArray();
@@
-201,7
+207,7
@@
SharedQuadState* RenderPass::CreateAndAppendSharedQuadState() {
RenderPassDrawQuad* RenderPass::CopyFromAndAppendRenderPassDrawQuad(
const RenderPassDrawQuad* quad,
const SharedQuadState* shared_quad_state,
RenderPassDrawQuad* RenderPass::CopyFromAndAppendRenderPassDrawQuad(
const RenderPassDrawQuad* quad,
const SharedQuadState* shared_quad_state,
- RenderPass
::
Id render_pass_id) {
+ RenderPassId render_pass_id) {
RenderPassDrawQuad* copy_quad =
CopyFromAndAppendTypedDrawQuad<RenderPassDrawQuad>(quad);
copy_quad->shared_quad_state = shared_quad_state;
RenderPassDrawQuad* copy_quad =
CopyFromAndAppendTypedDrawQuad<RenderPassDrawQuad>(quad);
copy_quad->shared_quad_state = shared_quad_state;