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

Side by Side Diff: extensions/browser/api/usb/usb_api.h

Issue 664933004: Standardize usage of virtual/override/final in extensions/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 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
« no previous file with comments | « extensions/browser/api/test/test_api.h ('k') | extensions/browser/api/usb/usb_apitest.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 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 #ifndef EXTENSIONS_BROWSER_API_USB_USB_API_H_ 5 #ifndef EXTENSIONS_BROWSER_API_USB_USB_API_H_
6 #define EXTENSIONS_BROWSER_API_USB_USB_API_H_ 6 #define EXTENSIONS_BROWSER_API_USB_USB_API_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 11 matching lines...) Expand all
22 namespace extensions { 22 namespace extensions {
23 23
24 class DevicePermissions; 24 class DevicePermissions;
25 class UsbDeviceResource; 25 class UsbDeviceResource;
26 26
27 class UsbAsyncApiFunction : public AsyncApiFunction { 27 class UsbAsyncApiFunction : public AsyncApiFunction {
28 public: 28 public:
29 UsbAsyncApiFunction(); 29 UsbAsyncApiFunction();
30 30
31 protected: 31 protected:
32 virtual ~UsbAsyncApiFunction(); 32 ~UsbAsyncApiFunction() override;
33 33
34 virtual bool PrePrepare() override; 34 bool PrePrepare() override;
35 virtual bool Respond() override; 35 bool Respond() override;
36 36
37 bool HasDevicePermission(scoped_refptr<device::UsbDevice> device); 37 bool HasDevicePermission(scoped_refptr<device::UsbDevice> device);
38 scoped_refptr<device::UsbDevice> GetDeviceOrCompleteWithError( 38 scoped_refptr<device::UsbDevice> GetDeviceOrCompleteWithError(
39 const extensions::core_api::usb::Device& input_device); 39 const extensions::core_api::usb::Device& input_device);
40 scoped_refptr<device::UsbDeviceHandle> GetDeviceHandleOrCompleteWithError( 40 scoped_refptr<device::UsbDeviceHandle> GetDeviceHandleOrCompleteWithError(
41 const extensions::core_api::usb::ConnectionHandle& input_device_handle); 41 const extensions::core_api::usb::ConnectionHandle& input_device_handle);
42 42
43 void RemoveUsbDeviceResource(int api_resource_id); 43 void RemoveUsbDeviceResource(int api_resource_id);
44 44
45 void CompleteWithError(const std::string& error); 45 void CompleteWithError(const std::string& error);
46 46
47 ApiResourceManager<UsbDeviceResource>* manager_; 47 ApiResourceManager<UsbDeviceResource>* manager_;
48 scoped_ptr<DevicePermissions> device_permissions_; 48 scoped_ptr<DevicePermissions> device_permissions_;
49 }; 49 };
50 50
51 class UsbAsyncApiTransferFunction : public UsbAsyncApiFunction { 51 class UsbAsyncApiTransferFunction : public UsbAsyncApiFunction {
52 protected: 52 protected:
53 UsbAsyncApiTransferFunction(); 53 UsbAsyncApiTransferFunction();
54 virtual ~UsbAsyncApiTransferFunction(); 54 ~UsbAsyncApiTransferFunction() override;
55 55
56 bool ConvertDirectionSafely(const extensions::core_api::usb::Direction& input, 56 bool ConvertDirectionSafely(const extensions::core_api::usb::Direction& input,
57 device::UsbEndpointDirection* output); 57 device::UsbEndpointDirection* output);
58 bool ConvertRequestTypeSafely( 58 bool ConvertRequestTypeSafely(
59 const extensions::core_api::usb::RequestType& input, 59 const extensions::core_api::usb::RequestType& input,
60 device::UsbDeviceHandle::TransferRequestType* output); 60 device::UsbDeviceHandle::TransferRequestType* output);
61 bool ConvertRecipientSafely( 61 bool ConvertRecipientSafely(
62 const extensions::core_api::usb::Recipient& input, 62 const extensions::core_api::usb::Recipient& input,
63 device::UsbDeviceHandle::TransferRecipient* output); 63 device::UsbDeviceHandle::TransferRecipient* output);
64 64
65 void OnCompleted(device::UsbTransferStatus status, 65 void OnCompleted(device::UsbTransferStatus status,
66 scoped_refptr<net::IOBuffer> data, 66 scoped_refptr<net::IOBuffer> data,
67 size_t length); 67 size_t length);
68 }; 68 };
69 69
70 class UsbFindDevicesFunction : public UsbAsyncApiFunction { 70 class UsbFindDevicesFunction : public UsbAsyncApiFunction {
71 public: 71 public:
72 DECLARE_EXTENSION_FUNCTION("usb.findDevices", USB_FINDDEVICES) 72 DECLARE_EXTENSION_FUNCTION("usb.findDevices", USB_FINDDEVICES)
73 73
74 UsbFindDevicesFunction(); 74 UsbFindDevicesFunction();
75 75
76 protected: 76 protected:
77 virtual ~UsbFindDevicesFunction(); 77 ~UsbFindDevicesFunction() override;
78 78
79 virtual bool Prepare() override; 79 bool Prepare() override;
80 virtual void AsyncWorkStart() override; 80 void AsyncWorkStart() override;
81 81
82 private: 82 private:
83 void OpenDevices( 83 void OpenDevices(
84 scoped_ptr<std::vector<scoped_refptr<device::UsbDevice> > > devices); 84 scoped_ptr<std::vector<scoped_refptr<device::UsbDevice> > > devices);
85 85
86 std::vector<scoped_refptr<device::UsbDeviceHandle> > device_handles_; 86 std::vector<scoped_refptr<device::UsbDeviceHandle> > device_handles_;
87 scoped_ptr<extensions::core_api::usb::FindDevices::Params> parameters_; 87 scoped_ptr<extensions::core_api::usb::FindDevices::Params> parameters_;
88 }; 88 };
89 89
90 class UsbGetDevicesFunction : public UsbAsyncApiFunction { 90 class UsbGetDevicesFunction : public UsbAsyncApiFunction {
91 public: 91 public:
92 DECLARE_EXTENSION_FUNCTION("usb.getDevices", USB_GETDEVICES) 92 DECLARE_EXTENSION_FUNCTION("usb.getDevices", USB_GETDEVICES)
93 93
94 UsbGetDevicesFunction(); 94 UsbGetDevicesFunction();
95 95
96 virtual bool Prepare() override; 96 bool Prepare() override;
97 virtual void AsyncWorkStart() override; 97 void AsyncWorkStart() override;
98 98
99 protected: 99 protected:
100 virtual ~UsbGetDevicesFunction(); 100 ~UsbGetDevicesFunction() override;
101 101
102 private: 102 private:
103 scoped_ptr<extensions::core_api::usb::GetDevices::Params> parameters_; 103 scoped_ptr<extensions::core_api::usb::GetDevices::Params> parameters_;
104 }; 104 };
105 105
106 class UsbGetUserSelectedDevicesFunction 106 class UsbGetUserSelectedDevicesFunction
107 : public UIThreadExtensionFunction, 107 : public UIThreadExtensionFunction,
108 public DevicePermissionsPrompt::Delegate { 108 public DevicePermissionsPrompt::Delegate {
109 public: 109 public:
110 DECLARE_EXTENSION_FUNCTION("usb.getUserSelectedDevices", 110 DECLARE_EXTENSION_FUNCTION("usb.getUserSelectedDevices",
111 USB_GETUSERSELECTEDDEVICES) 111 USB_GETUSERSELECTEDDEVICES)
112 112
113 UsbGetUserSelectedDevicesFunction(); 113 UsbGetUserSelectedDevicesFunction();
114 114
115 protected: 115 protected:
116 virtual ~UsbGetUserSelectedDevicesFunction(); 116 ~UsbGetUserSelectedDevicesFunction() override;
117 virtual ResponseAction Run() override; 117 ResponseAction Run() override;
118 118
119 private: 119 private:
120 virtual void OnUsbDevicesChosen( 120 void OnUsbDevicesChosen(
121 const std::vector<scoped_refptr<device::UsbDevice>>& devices) override; 121 const std::vector<scoped_refptr<device::UsbDevice>>& devices) override;
122 122
123 scoped_ptr<DevicePermissionsPrompt> prompt_; 123 scoped_ptr<DevicePermissionsPrompt> prompt_;
124 std::vector<uint32> device_ids_; 124 std::vector<uint32> device_ids_;
125 std::vector<scoped_refptr<device::UsbDevice>> devices_; 125 std::vector<scoped_refptr<device::UsbDevice>> devices_;
126 std::vector<base::string16> serial_numbers_; 126 std::vector<base::string16> serial_numbers_;
127 }; 127 };
128 128
129 class UsbRequestAccessFunction : public UsbAsyncApiFunction { 129 class UsbRequestAccessFunction : public UsbAsyncApiFunction {
130 public: 130 public:
131 DECLARE_EXTENSION_FUNCTION("usb.requestAccess", USB_REQUESTACCESS) 131 DECLARE_EXTENSION_FUNCTION("usb.requestAccess", USB_REQUESTACCESS)
132 132
133 UsbRequestAccessFunction(); 133 UsbRequestAccessFunction();
134 134
135 virtual bool Prepare() override; 135 bool Prepare() override;
136 virtual void AsyncWorkStart() override; 136 void AsyncWorkStart() override;
137 137
138 protected: 138 protected:
139 virtual ~UsbRequestAccessFunction(); 139 ~UsbRequestAccessFunction() override;
140 140
141 void OnCompleted(bool success); 141 void OnCompleted(bool success);
142 142
143 private: 143 private:
144 scoped_ptr<extensions::core_api::usb::RequestAccess::Params> parameters_; 144 scoped_ptr<extensions::core_api::usb::RequestAccess::Params> parameters_;
145 }; 145 };
146 146
147 class UsbOpenDeviceFunction : public UsbAsyncApiFunction { 147 class UsbOpenDeviceFunction : public UsbAsyncApiFunction {
148 public: 148 public:
149 DECLARE_EXTENSION_FUNCTION("usb.openDevice", USB_OPENDEVICE) 149 DECLARE_EXTENSION_FUNCTION("usb.openDevice", USB_OPENDEVICE)
150 150
151 UsbOpenDeviceFunction(); 151 UsbOpenDeviceFunction();
152 152
153 virtual bool Prepare() override; 153 bool Prepare() override;
154 virtual void AsyncWorkStart() override; 154 void AsyncWorkStart() override;
155 155
156 protected: 156 protected:
157 virtual ~UsbOpenDeviceFunction(); 157 ~UsbOpenDeviceFunction() override;
158 158
159 private: 159 private:
160 scoped_refptr<device::UsbDeviceHandle> handle_; 160 scoped_refptr<device::UsbDeviceHandle> handle_;
161 scoped_ptr<extensions::core_api::usb::OpenDevice::Params> parameters_; 161 scoped_ptr<extensions::core_api::usb::OpenDevice::Params> parameters_;
162 }; 162 };
163 163
164 class UsbGetConfigurationFunction : public UsbAsyncApiFunction { 164 class UsbGetConfigurationFunction : public UsbAsyncApiFunction {
165 public: 165 public:
166 DECLARE_EXTENSION_FUNCTION("usb.getConfiguration", USB_GETCONFIGURATION) 166 DECLARE_EXTENSION_FUNCTION("usb.getConfiguration", USB_GETCONFIGURATION)
167 167
168 UsbGetConfigurationFunction(); 168 UsbGetConfigurationFunction();
169 169
170 protected: 170 protected:
171 virtual ~UsbGetConfigurationFunction(); 171 ~UsbGetConfigurationFunction() override;
172 172
173 virtual bool Prepare() override; 173 bool Prepare() override;
174 virtual void AsyncWorkStart() override; 174 void AsyncWorkStart() override;
175 175
176 private: 176 private:
177 scoped_ptr<extensions::core_api::usb::GetConfiguration::Params> parameters_; 177 scoped_ptr<extensions::core_api::usb::GetConfiguration::Params> parameters_;
178 }; 178 };
179 179
180 class UsbListInterfacesFunction : public UsbAsyncApiFunction { 180 class UsbListInterfacesFunction : public UsbAsyncApiFunction {
181 public: 181 public:
182 DECLARE_EXTENSION_FUNCTION("usb.listInterfaces", USB_LISTINTERFACES) 182 DECLARE_EXTENSION_FUNCTION("usb.listInterfaces", USB_LISTINTERFACES)
183 183
184 UsbListInterfacesFunction(); 184 UsbListInterfacesFunction();
185 185
186 protected: 186 protected:
187 virtual ~UsbListInterfacesFunction(); 187 ~UsbListInterfacesFunction() override;
188 188
189 virtual bool Prepare() override; 189 bool Prepare() override;
190 virtual void AsyncWorkStart() override; 190 void AsyncWorkStart() override;
191 191
192 private: 192 private:
193 scoped_ptr<extensions::core_api::usb::ListInterfaces::Params> parameters_; 193 scoped_ptr<extensions::core_api::usb::ListInterfaces::Params> parameters_;
194 }; 194 };
195 195
196 class UsbCloseDeviceFunction : public UsbAsyncApiFunction { 196 class UsbCloseDeviceFunction : public UsbAsyncApiFunction {
197 public: 197 public:
198 DECLARE_EXTENSION_FUNCTION("usb.closeDevice", USB_CLOSEDEVICE) 198 DECLARE_EXTENSION_FUNCTION("usb.closeDevice", USB_CLOSEDEVICE)
199 199
200 UsbCloseDeviceFunction(); 200 UsbCloseDeviceFunction();
201 201
202 protected: 202 protected:
203 virtual ~UsbCloseDeviceFunction(); 203 ~UsbCloseDeviceFunction() override;
204 204
205 virtual bool Prepare() override; 205 bool Prepare() override;
206 virtual void AsyncWorkStart() override; 206 void AsyncWorkStart() override;
207 207
208 private: 208 private:
209 scoped_ptr<extensions::core_api::usb::CloseDevice::Params> parameters_; 209 scoped_ptr<extensions::core_api::usb::CloseDevice::Params> parameters_;
210 }; 210 };
211 211
212 class UsbClaimInterfaceFunction : public UsbAsyncApiFunction { 212 class UsbClaimInterfaceFunction : public UsbAsyncApiFunction {
213 public: 213 public:
214 DECLARE_EXTENSION_FUNCTION("usb.claimInterface", USB_CLAIMINTERFACE) 214 DECLARE_EXTENSION_FUNCTION("usb.claimInterface", USB_CLAIMINTERFACE)
215 215
216 UsbClaimInterfaceFunction(); 216 UsbClaimInterfaceFunction();
217 217
218 protected: 218 protected:
219 virtual ~UsbClaimInterfaceFunction(); 219 ~UsbClaimInterfaceFunction() override;
220 220
221 virtual bool Prepare() override; 221 bool Prepare() override;
222 virtual void AsyncWorkStart() override; 222 void AsyncWorkStart() override;
223 223
224 private: 224 private:
225 scoped_ptr<extensions::core_api::usb::ClaimInterface::Params> parameters_; 225 scoped_ptr<extensions::core_api::usb::ClaimInterface::Params> parameters_;
226 }; 226 };
227 227
228 class UsbReleaseInterfaceFunction : public UsbAsyncApiFunction { 228 class UsbReleaseInterfaceFunction : public UsbAsyncApiFunction {
229 public: 229 public:
230 DECLARE_EXTENSION_FUNCTION("usb.releaseInterface", USB_RELEASEINTERFACE) 230 DECLARE_EXTENSION_FUNCTION("usb.releaseInterface", USB_RELEASEINTERFACE)
231 231
232 UsbReleaseInterfaceFunction(); 232 UsbReleaseInterfaceFunction();
233 233
234 protected: 234 protected:
235 virtual ~UsbReleaseInterfaceFunction(); 235 ~UsbReleaseInterfaceFunction() override;
236 236
237 virtual bool Prepare() override; 237 bool Prepare() override;
238 virtual void AsyncWorkStart() override; 238 void AsyncWorkStart() override;
239 239
240 private: 240 private:
241 scoped_ptr<extensions::core_api::usb::ReleaseInterface::Params> parameters_; 241 scoped_ptr<extensions::core_api::usb::ReleaseInterface::Params> parameters_;
242 }; 242 };
243 243
244 class UsbSetInterfaceAlternateSettingFunction : public UsbAsyncApiFunction { 244 class UsbSetInterfaceAlternateSettingFunction : public UsbAsyncApiFunction {
245 public: 245 public:
246 DECLARE_EXTENSION_FUNCTION("usb.setInterfaceAlternateSetting", 246 DECLARE_EXTENSION_FUNCTION("usb.setInterfaceAlternateSetting",
247 USB_SETINTERFACEALTERNATESETTING) 247 USB_SETINTERFACEALTERNATESETTING)
248 248
249 UsbSetInterfaceAlternateSettingFunction(); 249 UsbSetInterfaceAlternateSettingFunction();
250 250
251 private: 251 private:
252 virtual ~UsbSetInterfaceAlternateSettingFunction(); 252 ~UsbSetInterfaceAlternateSettingFunction() override;
253 253
254 virtual bool Prepare() override; 254 bool Prepare() override;
255 virtual void AsyncWorkStart() override; 255 void AsyncWorkStart() override;
256 256
257 scoped_ptr<extensions::core_api::usb::SetInterfaceAlternateSetting::Params> 257 scoped_ptr<extensions::core_api::usb::SetInterfaceAlternateSetting::Params>
258 parameters_; 258 parameters_;
259 }; 259 };
260 260
261 class UsbControlTransferFunction : public UsbAsyncApiTransferFunction { 261 class UsbControlTransferFunction : public UsbAsyncApiTransferFunction {
262 public: 262 public:
263 DECLARE_EXTENSION_FUNCTION("usb.controlTransfer", USB_CONTROLTRANSFER) 263 DECLARE_EXTENSION_FUNCTION("usb.controlTransfer", USB_CONTROLTRANSFER)
264 264
265 UsbControlTransferFunction(); 265 UsbControlTransferFunction();
266 266
267 protected: 267 protected:
268 virtual ~UsbControlTransferFunction(); 268 ~UsbControlTransferFunction() override;
269 269
270 virtual bool Prepare() override; 270 bool Prepare() override;
271 virtual void AsyncWorkStart() override; 271 void AsyncWorkStart() override;
272 272
273 private: 273 private:
274 scoped_ptr<extensions::core_api::usb::ControlTransfer::Params> parameters_; 274 scoped_ptr<extensions::core_api::usb::ControlTransfer::Params> parameters_;
275 }; 275 };
276 276
277 class UsbBulkTransferFunction : public UsbAsyncApiTransferFunction { 277 class UsbBulkTransferFunction : public UsbAsyncApiTransferFunction {
278 public: 278 public:
279 DECLARE_EXTENSION_FUNCTION("usb.bulkTransfer", USB_BULKTRANSFER) 279 DECLARE_EXTENSION_FUNCTION("usb.bulkTransfer", USB_BULKTRANSFER)
280 280
281 UsbBulkTransferFunction(); 281 UsbBulkTransferFunction();
282 282
283 protected: 283 protected:
284 virtual ~UsbBulkTransferFunction(); 284 ~UsbBulkTransferFunction() override;
285 285
286 virtual bool Prepare() override; 286 bool Prepare() override;
287 virtual void AsyncWorkStart() override; 287 void AsyncWorkStart() override;
288 288
289 private: 289 private:
290 scoped_ptr<extensions::core_api::usb::BulkTransfer::Params> parameters_; 290 scoped_ptr<extensions::core_api::usb::BulkTransfer::Params> parameters_;
291 }; 291 };
292 292
293 class UsbInterruptTransferFunction : public UsbAsyncApiTransferFunction { 293 class UsbInterruptTransferFunction : public UsbAsyncApiTransferFunction {
294 public: 294 public:
295 DECLARE_EXTENSION_FUNCTION("usb.interruptTransfer", USB_INTERRUPTTRANSFER) 295 DECLARE_EXTENSION_FUNCTION("usb.interruptTransfer", USB_INTERRUPTTRANSFER)
296 296
297 UsbInterruptTransferFunction(); 297 UsbInterruptTransferFunction();
298 298
299 protected: 299 protected:
300 virtual ~UsbInterruptTransferFunction(); 300 ~UsbInterruptTransferFunction() override;
301 301
302 virtual bool Prepare() override; 302 bool Prepare() override;
303 virtual void AsyncWorkStart() override; 303 void AsyncWorkStart() override;
304 304
305 private: 305 private:
306 scoped_ptr<extensions::core_api::usb::InterruptTransfer::Params> parameters_; 306 scoped_ptr<extensions::core_api::usb::InterruptTransfer::Params> parameters_;
307 }; 307 };
308 308
309 class UsbIsochronousTransferFunction : public UsbAsyncApiTransferFunction { 309 class UsbIsochronousTransferFunction : public UsbAsyncApiTransferFunction {
310 public: 310 public:
311 DECLARE_EXTENSION_FUNCTION("usb.isochronousTransfer", USB_ISOCHRONOUSTRANSFER) 311 DECLARE_EXTENSION_FUNCTION("usb.isochronousTransfer", USB_ISOCHRONOUSTRANSFER)
312 312
313 UsbIsochronousTransferFunction(); 313 UsbIsochronousTransferFunction();
314 314
315 protected: 315 protected:
316 virtual ~UsbIsochronousTransferFunction(); 316 ~UsbIsochronousTransferFunction() override;
317 317
318 virtual bool Prepare() override; 318 bool Prepare() override;
319 virtual void AsyncWorkStart() override; 319 void AsyncWorkStart() override;
320 320
321 private: 321 private:
322 scoped_ptr<extensions::core_api::usb::IsochronousTransfer::Params> 322 scoped_ptr<extensions::core_api::usb::IsochronousTransfer::Params>
323 parameters_; 323 parameters_;
324 }; 324 };
325 325
326 class UsbResetDeviceFunction : public UsbAsyncApiFunction { 326 class UsbResetDeviceFunction : public UsbAsyncApiFunction {
327 public: 327 public:
328 DECLARE_EXTENSION_FUNCTION("usb.resetDevice", USB_RESETDEVICE) 328 DECLARE_EXTENSION_FUNCTION("usb.resetDevice", USB_RESETDEVICE)
329 329
330 UsbResetDeviceFunction(); 330 UsbResetDeviceFunction();
331 331
332 protected: 332 protected:
333 virtual ~UsbResetDeviceFunction(); 333 ~UsbResetDeviceFunction() override;
334 334
335 virtual bool Prepare() override; 335 bool Prepare() override;
336 virtual void AsyncWorkStart() override; 336 void AsyncWorkStart() override;
337 337
338 private: 338 private:
339 scoped_ptr<extensions::core_api::usb::ResetDevice::Params> parameters_; 339 scoped_ptr<extensions::core_api::usb::ResetDevice::Params> parameters_;
340 }; 340 };
341 } // namespace extensions 341 } // namespace extensions
342 342
343 #endif // EXTENSIONS_BROWSER_API_USB_USB_API_H_ 343 #endif // EXTENSIONS_BROWSER_API_USB_USB_API_H_
OLDNEW
« no previous file with comments | « extensions/browser/api/test/test_api.h ('k') | extensions/browser/api/usb/usb_apitest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698