Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(533)

Side by Side Diff: gpu/ipc/gpu_command_buffer_traits.h

Issue 1394543003: Added SyncToken command buffer trait to help with IPC messages. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 GPU_IPC_GPU_PARAM_TRAITS_H_ 5 #ifndef GPU_IPC_GPU_PARAM_TRAITS_H_
6 #define GPU_IPC_GPU_PARAM_TRAITS_H_ 6 #define GPU_IPC_GPU_PARAM_TRAITS_H_
7 7
8 #include "gpu/command_buffer/common/command_buffer.h" 8 #include "gpu/command_buffer/common/command_buffer.h"
9 #include "gpu/gpu_export.h" 9 #include "gpu/gpu_export.h"
10 #include "gpu/ipc/gpu_command_buffer_traits_multi.h" 10 #include "gpu/ipc/gpu_command_buffer_traits_multi.h"
11 #include "ipc/ipc_message_utils.h" 11 #include "ipc/ipc_message_utils.h"
12 12
13 namespace gpu { 13 namespace gpu {
14 struct Mailbox; 14 struct Mailbox;
15 struct MailboxHolder; 15 struct MailboxHolder;
16 struct SyncToken;
16 union ValueState; 17 union ValueState;
17 } 18 }
18 19
19 namespace IPC { 20 namespace IPC {
20 21
21 template <> 22 template <>
22 struct GPU_EXPORT ParamTraits<gpu::CommandBuffer::State> { 23 struct GPU_EXPORT ParamTraits<gpu::CommandBuffer::State> {
23 typedef gpu::CommandBuffer::State param_type; 24 typedef gpu::CommandBuffer::State param_type;
24 static void Write(Message* m, const param_type& p); 25 static void Write(Message* m, const param_type& p);
25 static bool Read(const Message* m, base::PickleIterator* iter, param_type* p); 26 static bool Read(const Message* m, base::PickleIterator* iter, param_type* p);
26 static void Log(const param_type& p, std::string* l); 27 static void Log(const param_type& p, std::string* l);
27 }; 28 };
28 29
29 template<> 30 template<>
31 struct GPU_EXPORT ParamTraits<gpu::SyncToken> {
32 typedef gpu::SyncToken param_type;
33 static void Write(Message* m, const param_type& p);
34 static bool Read(const Message* m, base::PickleIterator* iter, param_type* p);
35 static void Log(const param_type& p, std::string* l);
36 };
37
38 template<>
30 struct GPU_EXPORT ParamTraits<gpu::Mailbox> { 39 struct GPU_EXPORT ParamTraits<gpu::Mailbox> {
31 typedef gpu::Mailbox param_type; 40 typedef gpu::Mailbox param_type;
32 static void Write(Message* m, const param_type& p); 41 static void Write(Message* m, const param_type& p);
33 static bool Read(const Message* m, base::PickleIterator* iter, param_type* p); 42 static bool Read(const Message* m, base::PickleIterator* iter, param_type* p);
34 static void Log(const param_type& p, std::string* l); 43 static void Log(const param_type& p, std::string* l);
35 }; 44 };
36 45
37 template <> 46 template <>
38 struct GPU_EXPORT ParamTraits<gpu::MailboxHolder> { 47 struct GPU_EXPORT ParamTraits<gpu::MailboxHolder> {
39 typedef gpu::MailboxHolder param_type; 48 typedef gpu::MailboxHolder param_type;
40 static void Write(Message* m, const param_type& p); 49 static void Write(Message* m, const param_type& p);
41 static bool Read(const Message* m, base::PickleIterator* iter, param_type* p); 50 static bool Read(const Message* m, base::PickleIterator* iter, param_type* p);
42 static void Log(const param_type& p, std::string* l); 51 static void Log(const param_type& p, std::string* l);
43 }; 52 };
44 53
45 template <> 54 template <>
46 struct GPU_EXPORT ParamTraits<gpu::ValueState> { 55 struct GPU_EXPORT ParamTraits<gpu::ValueState> {
47 typedef gpu::ValueState param_type; 56 typedef gpu::ValueState param_type;
48 static void Write(Message* m, const param_type& p); 57 static void Write(Message* m, const param_type& p);
49 static bool Read(const Message* m, base::PickleIterator* iter, param_type* p); 58 static bool Read(const Message* m, base::PickleIterator* iter, param_type* p);
50 static void Log(const param_type& p, std::string* l); 59 static void Log(const param_type& p, std::string* l);
51 }; 60 };
52 61
53 } // namespace IPC 62 } // namespace IPC
54 63
55 #endif // GPU_IPC_GPU_PARAM_TRAITS_H_ 64 #endif // GPU_IPC_GPU_PARAM_TRAITS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698