1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CONTENT_RENDERER_GAMEPAD_SHARED_MEMORY_READER_H_ 6 #define CONTENT_RENDERER_GAMEPAD_SHARED_MEMORY_READER_H_ 7 8 #include "base/memory/scoped_ptr.h" 9 #include "base/memory/shared_memory.h" 10 #include "third_party/WebKit/public/platform/WebGamepads.h" 11 12 namespace content { 13 14 struct GamepadHardwareBuffer; 15 16 class GamepadSharedMemoryReader { 17 public: 18 GamepadSharedMemoryReader(); 19 virtual ~GamepadSharedMemoryReader(); 20 void SampleGamepads(blink::WebGamepads&); 21 22 private: 23 base::SharedMemoryHandle renderer_shared_memory_handle_; 24 scoped_ptr<base::SharedMemory> renderer_shared_memory_; 25 GamepadHardwareBuffer* gamepad_hardware_buffer_; 26 27 bool ever_interacted_with_; 28 }; 29 30 } // namespace content 31 32 #endif // CONTENT_RENDERER_GAMEPAD_SHARED_MEMORY_READER_H_ 33