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

Side by Side Diff: content/browser/gamepad/raw_input_data_fetcher_win.cc

Issue 1507413003: clang/win: Let some chromium_code targets build with -Wextra. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: content_browsertests Created 5 years 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #include "content/browser/gamepad/raw_input_data_fetcher_win.h" 5 #include "content/browser/gamepad/raw_input_data_fetcher_win.h"
6 6
7 #include "base/trace_event/trace_event.h" 7 #include "base/trace_event/trace_event.h"
8 #include "content/common/gamepad_hardware_buffer.h" 8 #include "content/common/gamepad_hardware_buffer.h"
9 #include "content/common/gamepad_messages.h" 9 #include "content/common/gamepad_messages.h"
10 10
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 ClearControllers(); 51 ClearControllers();
52 DCHECK(!window_); 52 DCHECK(!window_);
53 DCHECK(!events_monitored_); 53 DCHECK(!events_monitored_);
54 } 54 }
55 55
56 void RawInputDataFetcher::WillDestroyCurrentMessageLoop() { 56 void RawInputDataFetcher::WillDestroyCurrentMessageLoop() {
57 StopMonitor(); 57 StopMonitor();
58 } 58 }
59 59
60 RAWINPUTDEVICE* RawInputDataFetcher::GetRawInputDevices(DWORD flags) { 60 RAWINPUTDEVICE* RawInputDataFetcher::GetRawInputDevices(DWORD flags) {
61 int usage_count = arraysize(DeviceUsages); 61 size_t usage_count = arraysize(DeviceUsages);
62 scoped_ptr<RAWINPUTDEVICE[]> devices(new RAWINPUTDEVICE[usage_count]); 62 scoped_ptr<RAWINPUTDEVICE[]> devices(new RAWINPUTDEVICE[usage_count]);
63 for (int i = 0; i < usage_count; ++i) { 63 for (size_t i = 0; i < usage_count; ++i) {
64 devices[i].dwFlags = flags; 64 devices[i].dwFlags = flags;
65 devices[i].usUsagePage = 1; 65 devices[i].usUsagePage = 1;
66 devices[i].usUsage = DeviceUsages[i]; 66 devices[i].usUsage = DeviceUsages[i];
67 devices[i].hwndTarget = (flags & RIDEV_REMOVE) ? 0 : window_->hwnd(); 67 devices[i].hwndTarget = (flags & RIDEV_REMOVE) ? 0 : window_->hwnd();
68 } 68 }
69 return devices.release(); 69 return devices.release();
70 } 70 }
71 71
72 void RawInputDataFetcher::StartMonitor() { 72 void RawInputDataFetcher::StartMonitor() {
73 if (!rawinput_available_ || events_monitored_) 73 if (!rawinput_available_ || events_monitored_)
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
193 result = GetRawInputDeviceInfo(hDevice, RIDI_DEVICEINFO, 193 result = GetRawInputDeviceInfo(hDevice, RIDI_DEVICEINFO,
194 di_buffer.get(), &size); 194 di_buffer.get(), &size);
195 if (result == static_cast<UINT>(-1)) { 195 if (result == static_cast<UINT>(-1)) {
196 PLOG(ERROR) << "GetRawInputDeviceInfo() failed"; 196 PLOG(ERROR) << "GetRawInputDeviceInfo() failed";
197 return NULL; 197 return NULL;
198 } 198 }
199 DCHECK_EQ(size, result); 199 DCHECK_EQ(size, result);
200 200
201 // Make sure this device is of a type that we want to observe. 201 // Make sure this device is of a type that we want to observe.
202 bool valid_type = false; 202 bool valid_type = false;
203 for (int i = 0; i < arraysize(DeviceUsages); ++i) { 203 for (USHORT device_usage : DeviceUsages) {
204 if (device_info->hid.usUsage == DeviceUsages[i]) { 204 if (device_info->hid.usUsage == device_usage) {
205 valid_type = true; 205 valid_type = true;
206 break; 206 break;
207 } 207 }
208 } 208 }
209 209
210 if (!valid_type) 210 if (!valid_type)
211 return NULL; 211 return NULL;
212 212
213 scoped_ptr<RawGamepadInfo> gamepad_info(new RawGamepadInfo); 213 scoped_ptr<RawGamepadInfo> gamepad_info(new RawGamepadInfo);
214 gamepad_info->handle = hDevice; 214 gamepad_info->handle = hDevice;
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after
382 &buttons_length, 382 &buttons_length,
383 gamepad_info->preparsed_data, 383 gamepad_info->preparsed_data,
384 reinterpret_cast<PCHAR>(input->data.hid.bRawData), 384 reinterpret_cast<PCHAR>(input->data.hid.bRawData),
385 input->data.hid.dwSizeHid); 385 input->data.hid.dwSizeHid);
386 386
387 if (status == HIDP_STATUS_SUCCESS) { 387 if (status == HIDP_STATUS_SUCCESS) {
388 // Set each reported button to true. 388 // Set each reported button to true.
389 for (uint32_t j = 0; j < buttons_length; j++) { 389 for (uint32_t j = 0; j < buttons_length; j++) {
390 int32_t button_index = usages[j].Usage - 1; 390 int32_t button_index = usages[j].Usage - 1;
391 if (button_index >= 0 && 391 if (button_index >= 0 &&
392 button_index < blink::WebGamepad::buttonsLengthCap) 392 button_index <
393 static_cast<int>(blink::WebGamepad::buttonsLengthCap)) {
393 gamepad_info->buttons[button_index] = true; 394 gamepad_info->buttons[button_index] = true;
395 }
394 } 396 }
395 } 397 }
396 } 398 }
397 399
398 // Query axis state. 400 // Query axis state.
399 ULONG axis_value = 0; 401 ULONG axis_value = 0;
400 LONG scaled_axis_value = 0; 402 LONG scaled_axis_value = 0;
401 for (uint32_t i = 0; i < gamepad_info->axes_length; i++) { 403 for (uint32_t i = 0; i < gamepad_info->axes_length; i++) {
402 RawGamepadAxis* axis = &gamepad_info->axes[i]; 404 RawGamepadAxis* axis = &gamepad_info->axes[i];
403 405
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
511 return false; 513 return false;
512 hidd_get_product_string_ = reinterpret_cast<HidDGetStringFunc>( 514 hidd_get_product_string_ = reinterpret_cast<HidDGetStringFunc>(
513 hid_dll_.GetFunctionPointer("HidD_GetProductString")); 515 hid_dll_.GetFunctionPointer("HidD_GetProductString"));
514 if (!hidd_get_product_string_) 516 if (!hidd_get_product_string_)
515 return false; 517 return false;
516 518
517 return true; 519 return true;
518 } 520 }
519 521
520 } // namespace content 522 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698