Index: gpu/command_buffer/common/cmd_buffer_common.h |
=================================================================== |
--- gpu/command_buffer/common/cmd_buffer_common.h (revision 34064) |
+++ gpu/command_buffer/common/cmd_buffer_common.h (working copy) |
@@ -107,10 +107,11 @@ |
float value_float; |
}; |
-COMPILE_ASSERT(sizeof(CommandBufferEntry) == 4, |
+const size_t kCommandBufferEntrySize = 4; |
+ |
+COMPILE_ASSERT(sizeof(CommandBufferEntry) == kCommandBufferEntrySize, |
Sizeof_CommandBufferEntry_is_not_4); |
- |
// Make sure the compiler does not add extra padding to any of the command |
// structures. |
#pragma pack(push, 1) |
@@ -181,8 +182,8 @@ |
OP(SetBucketSize) /* 7 */ \ |
OP(SetBucketData) /* 8 */ \ |
OP(SetBucketDataImmediate) /* 9 */ \ |
- OP(GetResultSize) /* 10 */ \ |
- OP(GetResultData) /* 11 */ \ |
+ OP(GetBucketSize) /* 10 */ \ |
+ OP(GetBucketData) /* 11 */ \ |
// Common commands. |
enum CommandId { |
@@ -566,76 +567,86 @@ |
COMPILE_ASSERT(offsetof(SetBucketDataImmediate, size) == 12, |
Offsetof_SetBucketDataImmediate_size_not_12); |
-// Gets the size of a result the service has available. |
-// Sending a variable size result back to the client, for example any API that |
-// returns a string, is problematic since the largest thing you can send back is |
-// the size of your shared memory. This command along with GetResultData |
-// implement a way to get a result a piece at a time to help solve that problem |
-// in a generic way. |
-struct GetResultSize { |
- typedef GetResultSize ValueType; |
- static const CommandId kCmdId = kGetResultSize; |
+// Gets the size of a bucket the service has available. Sending a variable size |
+// result back to the client, for example any API that returns a string, is |
+// problematic since the largest thing you can send back is the size of your |
+// shared memory. This command along with GetBucketData implements a way to get |
+// a result a piece at a time to help solve that problem in a generic way. |
+struct GetBucketSize { |
+ typedef GetBucketSize ValueType; |
+ static const CommandId kCmdId = kGetBucketSize; |
static const cmd::ArgFlags kArgFlags = cmd::kFixed; |
void SetHeader() { |
header.SetCmd<ValueType>(); |
} |
- void Init(uint32 _shared_memory_id, |
+ void Init(uint32 _bucket_id, |
+ uint32 _shared_memory_id, |
uint32 _shared_memory_offset) { |
SetHeader(); |
+ bucket_id = _bucket_id; |
shared_memory_id = _shared_memory_id; |
shared_memory_offset = _shared_memory_offset; |
} |
static void* Set(void* cmd, |
+ uint32 _bucket_id, |
uint32 _shared_memory_id, |
uint32 _shared_memory_offset) { |
static_cast<ValueType*>(cmd)->Init( |
+ _bucket_id, |
_shared_memory_id, |
_shared_memory_offset); |
return NextCmdAddress<ValueType>(cmd); |
} |
CommandHeader header; |
+ uint32 bucket_id; |
uint32 shared_memory_id; |
uint32 shared_memory_offset; |
}; |
-COMPILE_ASSERT(sizeof(GetResultSize) == 12, Sizeof_GetResultSize_is_not_12); |
-COMPILE_ASSERT(offsetof(GetResultSize, header) == 0, |
- Offsetof_GetResultSize_header_not_0); |
-COMPILE_ASSERT(offsetof(GetResultSize, shared_memory_id) == 4, |
- Offsetof_GetResultSize_shared_memory_id_not_4); |
-COMPILE_ASSERT(offsetof(GetResultSize, shared_memory_offset) == 8, |
- Offsetof_GetResultSize_shared_memory_offset_not_8); |
+COMPILE_ASSERT(sizeof(GetBucketSize) == 16, Sizeof_GetBucketSize_is_not_16); |
+COMPILE_ASSERT(offsetof(GetBucketSize, header) == 0, |
+ Offsetof_GetBucketSize_header_not_0); |
+COMPILE_ASSERT(offsetof(GetBucketSize, bucket_id) == 4, |
+ Offsetof_GetBucketSize_bucket_id_not_4); |
+COMPILE_ASSERT(offsetof(GetBucketSize, shared_memory_id) == 8, |
+ Offsetof_GetBucketSize_shared_memory_id_not_8); |
+COMPILE_ASSERT(offsetof(GetBucketSize, shared_memory_offset) == 12, |
+ Offsetof_GetBucketSize_shared_memory_offset_not_12); |
// Gets a piece of a result the service as available. |
-// See GetResultSize. |
-struct GetResultData { |
- typedef GetResultData ValueType; |
- static const CommandId kCmdId = kGetResultData; |
+// See GetBucketSize. |
+struct GetBucketData { |
+ typedef GetBucketData ValueType; |
+ static const CommandId kCmdId = kGetBucketData; |
static const cmd::ArgFlags kArgFlags = cmd::kFixed; |
void SetHeader() { |
header.SetCmd<ValueType>(); |
} |
- void Init(uint32 _offset, |
+ void Init(uint32 _bucket_id, |
+ uint32 _offset, |
uint32 _size, |
uint32 _shared_memory_id, |
uint32 _shared_memory_offset) { |
SetHeader(); |
+ bucket_id = _bucket_id; |
offset = _offset; |
size = _size; |
shared_memory_id = _shared_memory_id; |
shared_memory_offset = _shared_memory_offset; |
} |
static void* Set(void* cmd, |
+ uint32 _bucket_id, |
uint32 _offset, |
uint32 _size, |
uint32 _shared_memory_id, |
uint32 _shared_memory_offset) { |
static_cast<ValueType*>(cmd)->Init( |
+ _bucket_id, |
_offset, |
_size, |
_shared_memory_id, |
@@ -644,23 +655,26 @@ |
} |
CommandHeader header; |
+ uint32 bucket_id; |
uint32 offset; |
uint32 size; |
uint32 shared_memory_id; |
uint32 shared_memory_offset; |
}; |
-COMPILE_ASSERT(sizeof(GetResultData) == 20, Sizeof_GetResultData_is_not_20); |
-COMPILE_ASSERT(offsetof(GetResultData, header) == 0, |
- Offsetof_GetResultData_header_not_0); |
-COMPILE_ASSERT(offsetof(GetResultData, offset) == 4, |
- Offsetof_GetResultData_offset_not_4); |
-COMPILE_ASSERT(offsetof(GetResultData, size) == 8, |
- Offsetof_GetResultData_size_not_8); |
-COMPILE_ASSERT(offsetof(GetResultData, shared_memory_id) == 12, |
- Offsetof_GetResultData_shared_memory_id_not_12); |
-COMPILE_ASSERT(offsetof(GetResultData, shared_memory_offset) == 16, |
- Offsetof_GetResultData_shared_memory_offset_not_16); |
+COMPILE_ASSERT(sizeof(GetBucketData) == 24, Sizeof_GetBucketData_is_not_20); |
+COMPILE_ASSERT(offsetof(GetBucketData, header) == 0, |
+ Offsetof_GetBucketData_header_not_0); |
+COMPILE_ASSERT(offsetof(GetBucketData, bucket_id) == 4, |
+ Offsetof_GetBucketData_bucket_id_not_4); |
+COMPILE_ASSERT(offsetof(GetBucketData, offset) == 8, |
+ Offsetof_GetBucketData_offset_not_8); |
+COMPILE_ASSERT(offsetof(GetBucketData, size) == 12, |
+ Offsetof_GetBucketData_size_not_12); |
+COMPILE_ASSERT(offsetof(GetBucketData, shared_memory_id) == 16, |
+ Offsetof_GetBucketData_shared_memory_id_not_16); |
+COMPILE_ASSERT(offsetof(GetBucketData, shared_memory_offset) == 20, |
+ Offsetof_GetBucketData_shared_memory_offset_not_20); |
} // namespace cmd |