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

Side by Side Diff: gpu/command_buffer/client/client_test_helper.h

Issue 9387014: Add AsyncFlush when transferbuffer is > a certain size (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 8 years, 10 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | gpu/command_buffer/client/client_test_helper.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 // Helper classes for implementing gpu client side unit tests. 5 // Helper classes for implementing gpu client side unit tests.
6 6
7 #ifndef GPU_COMMAND_BUFFER_CLIENT_CLIENT_TEST_HELPER_H_ 7 #ifndef GPU_COMMAND_BUFFER_CLIENT_CLIENT_TEST_HELPER_H_
8 #define GPU_COMMAND_BUFFER_CLIENT_CLIENT_TEST_HELPER_H_ 8 #define GPU_COMMAND_BUFFER_CLIENT_CLIENT_TEST_HELPER_H_
9 9
10 #include "gpu/command_buffer/common/cmd_buffer_common.h" 10 #include "gpu/command_buffer/common/cmd_buffer_common.h"
(...skipping 11 matching lines...) Expand all
22 public: 22 public:
23 static const int32 kTransferBufferBaseId = 0x123; 23 static const int32 kTransferBufferBaseId = 0x123;
24 static const int32 kMaxTransferBuffers = 6; 24 static const int32 kMaxTransferBuffers = 6;
25 25
26 MockCommandBufferBase() { } 26 MockCommandBufferBase() { }
27 virtual ~MockCommandBufferBase(); 27 virtual ~MockCommandBufferBase();
28 28
29 virtual bool Initialize() OVERRIDE; 29 virtual bool Initialize() OVERRIDE;
30 virtual State GetState() OVERRIDE; 30 virtual State GetState() OVERRIDE;
31 virtual State GetLastState() OVERRIDE; 31 virtual State GetLastState() OVERRIDE;
32 virtual void Flush(int32 put_offset) OVERRIDE;
33 virtual State FlushSync(int32 put_offset, int32 last_known_get) OVERRIDE; 32 virtual State FlushSync(int32 put_offset, int32 last_known_get) OVERRIDE;
34 virtual void SetGetBuffer(int transfer_buffer_id) OVERRIDE; 33 virtual void SetGetBuffer(int transfer_buffer_id) OVERRIDE;
35 virtual void SetGetOffset(int32 get_offset) OVERRIDE; 34 virtual void SetGetOffset(int32 get_offset) OVERRIDE;
36 virtual int32 CreateTransferBuffer(size_t size, int32 id_request) OVERRIDE; 35 virtual int32 CreateTransferBuffer(size_t size, int32 id_request) OVERRIDE;
37 virtual Buffer GetTransferBuffer(int32 id) OVERRIDE; 36 virtual Buffer GetTransferBuffer(int32 id) OVERRIDE;
38 virtual int32 RegisterTransferBuffer(base::SharedMemory* shared_memory, 37 virtual int32 RegisterTransferBuffer(base::SharedMemory* shared_memory,
39 size_t size, 38 size_t size,
40 int32 id_request) OVERRIDE; 39 int32 id_request) OVERRIDE;
41 virtual void SetToken(int32 token) OVERRIDE; 40 virtual void SetToken(int32 token) OVERRIDE;
42 virtual void SetParseError(error::Error error) OVERRIDE; 41 virtual void SetParseError(error::Error error) OVERRIDE;
43 virtual void SetContextLostReason(error::ContextLostReason reason) OVERRIDE; 42 virtual void SetContextLostReason(error::ContextLostReason reason) OVERRIDE;
44 43
45 // Get's the Id of the next transfer buffer that will be returned 44 // Get's the Id of the next transfer buffer that will be returned
46 // by CreateTransferBuffer. This is useful for testing expected ids. 45 // by CreateTransferBuffer. This is useful for testing expected ids.
47 int32 GetNextFreeTransferBufferId(); 46 int32 GetNextFreeTransferBufferId();
48 47
48 void FlushHelper(int32 put_offset);
49 void DestroyTransferBufferHelper(int32 id); 49 void DestroyTransferBufferHelper(int32 id);
50 50
51 virtual void OnFlush() = 0; 51 virtual void OnFlush() = 0;
52 52
53 private: 53 private:
54 scoped_array<int8> transfer_buffers_[kMaxTransferBuffers]; 54 scoped_array<int8> transfer_buffers_[kMaxTransferBuffers];
55 Buffer transfer_buffer_buffers_[kMaxTransferBuffers]; 55 Buffer transfer_buffer_buffers_[kMaxTransferBuffers];
56 CommandBufferEntry* ring_buffer_; 56 CommandBufferEntry* ring_buffer_;
57 Buffer ring_buffer_buffer_; 57 Buffer ring_buffer_buffer_;
58 State state_; 58 State state_;
59 }; 59 };
60 60
61 class MockClientCommandBuffer : public MockCommandBufferBase { 61 class MockClientCommandBuffer : public MockCommandBufferBase {
62 public: 62 public:
63 MockClientCommandBuffer(); 63 MockClientCommandBuffer();
64 virtual ~MockClientCommandBuffer(); 64 virtual ~MockClientCommandBuffer();
65 65
66 // This is so we can use all the gmock functions when Flush is called. 66 // This is so we can use all the gmock functions when Flush is called.
67 MOCK_METHOD0(OnFlush, void()); 67 MOCK_METHOD0(OnFlush, void());
68 MOCK_METHOD1(DestroyTransferBuffer, void(int32 id)); 68 MOCK_METHOD1(DestroyTransferBuffer, void(int32 id));
69 69
70 virtual void Flush(int32 put_offset) OVERRIDE;
71
70 void DelegateToFake(); 72 void DelegateToFake();
71 }; 73 };
72 74
75 class MockClientCommandBufferMockFlush : public MockClientCommandBuffer {
76 public:
77 MockClientCommandBufferMockFlush();
78 virtual ~MockClientCommandBufferMockFlush();
79
80 MOCK_METHOD1(Flush, void(int32 put_offset));
81
82 void DelegateToFake();
83 };
84
73 } // namespace gpu 85 } // namespace gpu
74 86
75 #endif // GPU_COMMAND_BUFFER_CLIENT_CLIENT_TEST_HELPER_H_ 87 #endif // GPU_COMMAND_BUFFER_CLIENT_CLIENT_TEST_HELPER_H_
76 88
OLDNEW
« no previous file with comments | « no previous file | gpu/command_buffer/client/client_test_helper.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698