OLD | NEW |
1 /* ptp.h | 1 /* ptp.h |
2 * | 2 * |
3 * Copyright (C) 2001 Mariusz Woloszyn <emsi@ipartners.pl> | 3 * Copyright (C) 2001 Mariusz Woloszyn <emsi@ipartners.pl> |
4 * Copyright (C) 2003-2012 Marcus Meissner <marcus@jet.franken.de> | 4 * Copyright (C) 2003-2014 Marcus Meissner <marcus@jet.franken.de> |
5 * Copyright (C) 2006-2008 Linus Walleij <triad@df.lth.se> | 5 * Copyright (C) 2006-2008 Linus Walleij <triad@df.lth.se> |
6 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Lesser General Public | 8 * modify it under the terms of the GNU Lesser General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
11 * | 11 * |
12 * This library is distributed in the hope that it will be useful, | 12 * This library is distributed in the hope that it will be useful, |
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
15 * Lesser General Public License for more details. | 15 * Lesser General Public License for more details. |
16 * | 16 * |
17 * You should have received a copy of the GNU Lesser General Public | 17 * You should have received a copy of the GNU Lesser General Public |
18 * License along with this library; if not, write to the | 18 * License along with this library; if not, write to the |
19 * Free Software Foundation, Inc., 59 Temple Place - Suite 330, | 19 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
20 * Boston, MA 02111-1307, USA. | 20 * Boston, MA 02110-1301 USA |
21 */ | 21 */ |
22 | 22 |
23 #ifndef __PTP_H__ | 23 #ifndef __PTP_H__ |
24 #define __PTP_H__ | 24 #define __PTP_H__ |
25 | 25 |
26 #include <stdarg.h> | 26 #include <stdarg.h> |
27 #include <time.h> | 27 #include <time.h> |
28 #ifdef HAVE_ICONV | 28 #if defined(HAVE_ICONV) && defined(HAVE_LANGINFO_H) |
29 #include <iconv.h> | 29 #include <iconv.h> |
30 #endif | 30 #endif |
31 #include "gphoto2-endian.h" | 31 #include "gphoto2-endian.h" |
32 #include "device-flags.h" | 32 #include "device-flags.h" |
33 | 33 |
34 #ifdef __cplusplus | 34 #ifdef __cplusplus |
35 extern "C" { | 35 extern "C" { |
36 #endif /* __cplusplus */ | 36 #endif /* __cplusplus */ |
37 | 37 |
38 /* PTP datalayer byteorder */ | 38 /* PTP datalayer byteorder */ |
(...skipping 28 matching lines...) Expand all Loading... |
67 /* USB bulk max packet length for high speed endpoints */ | 67 /* USB bulk max packet length for high speed endpoints */ |
68 /* The max packet is set to 512 bytes. The spec says | 68 /* The max packet is set to 512 bytes. The spec says |
69 * "end of data transfers are signaled by short packets or NULL | 69 * "end of data transfers are signaled by short packets or NULL |
70 * packets". It never says anything about 512, but current | 70 * packets". It never says anything about 512, but current |
71 * implementations seem to have chosen this value, which also | 71 * implementations seem to have chosen this value, which also |
72 * happens to be the size of an USB 2.0 HS endpoint, even though | 72 * happens to be the size of an USB 2.0 HS endpoint, even though |
73 * this is not necessary. | 73 * this is not necessary. |
74 * | 74 * |
75 * Previously we had this as 4096 for MTP devices. We have found | 75 * Previously we had this as 4096 for MTP devices. We have found |
76 * and fixed the bugs that made this necessary and it can be 512 again. | 76 * and fixed the bugs that made this necessary and it can be 512 again. |
| 77 * |
| 78 * USB 3.0 has now 1024 byte EPs. |
77 */ | 79 */ |
78 #define PTP_USB_BULK_HS_MAX_PACKET_LEN_WRITE 512 | 80 #define PTP_USB_BULK_HS_MAX_PACKET_LEN_WRITE 512 |
79 #define PTP_USB_BULK_HS_MAX_PACKET_LEN_READ 512 | 81 #define PTP_USB_BULK_HS_MAX_PACKET_LEN_READ 512 |
| 82 #define PTP_USB_BULK_SS_MAX_PACKET_LEN_WRITE 1024 |
| 83 #define PTP_USB_BULK_SS_MAX_PACKET_LEN_READ 1024 |
80 #define PTP_USB_BULK_HDR_LEN (2*sizeof(uint32_t)+2*sizeof(uint16_t)) | 84 #define PTP_USB_BULK_HDR_LEN (2*sizeof(uint32_t)+2*sizeof(uint16_t)) |
81 #define PTP_USB_BULK_PAYLOAD_LEN_WRITE» (PTP_USB_BULK_HS_MAX_PACKET_LEN_WRITE-PT
P_USB_BULK_HDR_LEN) | 85 #define PTP_USB_BULK_PAYLOAD_LEN_WRITE» (PTP_USB_BULK_SS_MAX_PACKET_LEN_WRITE-PT
P_USB_BULK_HDR_LEN) |
82 #define PTP_USB_BULK_PAYLOAD_LEN_READ» (PTP_USB_BULK_HS_MAX_PACKET_LEN_READ-PTP
_USB_BULK_HDR_LEN) | 86 #define PTP_USB_BULK_PAYLOAD_LEN_READ» (PTP_USB_BULK_SS_MAX_PACKET_LEN_READ-PTP
_USB_BULK_HDR_LEN) |
83 #define PTP_USB_BULK_REQ_LEN (PTP_USB_BULK_HDR_LEN+5*sizeof(uint32_t)) | 87 #define PTP_USB_BULK_REQ_LEN (PTP_USB_BULK_HDR_LEN+5*sizeof(uint32_t)) |
84 | 88 |
85 struct _PTPUSBBulkContainer { | 89 struct _PTPUSBBulkContainer { |
86 uint32_t length; | 90 uint32_t length; |
87 uint16_t type; | 91 uint16_t type; |
88 uint16_t code; | 92 uint16_t code; |
89 uint32_t trans_id; | 93 uint32_t trans_id; |
90 union { | 94 union { |
91 struct { | 95 struct { |
92 uint32_t param1; | 96 uint32_t param1; |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 #define PTP_VENDOR_AGFA_GEVAERT 0x00000005 | 162 #define PTP_VENDOR_AGFA_GEVAERT 0x00000005 |
159 #define PTP_VENDOR_MICROSOFT 0x00000006 | 163 #define PTP_VENDOR_MICROSOFT 0x00000006 |
160 #define PTP_VENDOR_EQUINOX 0x00000007 | 164 #define PTP_VENDOR_EQUINOX 0x00000007 |
161 #define PTP_VENDOR_VIEWQUEST 0x00000008 | 165 #define PTP_VENDOR_VIEWQUEST 0x00000008 |
162 #define PTP_VENDOR_STMICROELECTRONICS 0x00000009 | 166 #define PTP_VENDOR_STMICROELECTRONICS 0x00000009 |
163 #define PTP_VENDOR_NIKON 0x0000000A | 167 #define PTP_VENDOR_NIKON 0x0000000A |
164 #define PTP_VENDOR_CANON 0x0000000B | 168 #define PTP_VENDOR_CANON 0x0000000B |
165 #define PTP_VENDOR_FOTONATION 0x0000000C | 169 #define PTP_VENDOR_FOTONATION 0x0000000C |
166 #define PTP_VENDOR_PENTAX 0x0000000D | 170 #define PTP_VENDOR_PENTAX 0x0000000D |
167 #define PTP_VENDOR_FUJI 0x0000000E | 171 #define PTP_VENDOR_FUJI 0x0000000E |
| 172 /* not from standards papers, but from traces: */ |
| 173 #define PTP_VENDOR_SONY 0x00000011 /* observed in the A900 */ |
| 174 #define PTP_VENDOR_SAMSUNG 0x0000001a /* observed in the Samsung NX
1000 */ |
168 /* Vendor extension ID used for MTP (occasionaly, usualy 6 is used) */ | 175 /* Vendor extension ID used for MTP (occasionaly, usualy 6 is used) */ |
169 #define PTP_VENDOR_MTP 0xffffffff | 176 #define PTP_VENDOR_MTP 0xffffffff |
170 | 177 |
| 178 /* gphoto overrides */ |
| 179 #define PTP_VENDOR_GP_OLYMPUS 0xfffffffe |
| 180 |
171 /* Operation Codes */ | 181 /* Operation Codes */ |
172 | 182 |
173 /* PTP v1.0 operation codes */ | 183 /* PTP v1.0 operation codes */ |
174 #define PTP_OC_Undefined 0x1000 | 184 #define PTP_OC_Undefined 0x1000 |
175 #define PTP_OC_GetDeviceInfo 0x1001 | 185 #define PTP_OC_GetDeviceInfo 0x1001 |
176 #define PTP_OC_OpenSession 0x1002 | 186 #define PTP_OC_OpenSession 0x1002 |
177 #define PTP_OC_CloseSession 0x1003 | 187 #define PTP_OC_CloseSession 0x1003 |
178 #define PTP_OC_GetStorageIDs 0x1004 | 188 #define PTP_OC_GetStorageIDs 0x1004 |
179 #define PTP_OC_GetStorageInfo 0x1005 | 189 #define PTP_OC_GetStorageInfo 0x1005 |
180 #define PTP_OC_GetNumObjects 0x1006 | 190 #define PTP_OC_GetNumObjects 0x1006 |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
261 #define PTP_OC_CANON_SendObjectByPath 0x9025 | 271 #define PTP_OC_CANON_SendObjectByPath 0x9025 |
262 #define PTP_OC_CANON_InitiateDirectTansferEx 0x9026 | 272 #define PTP_OC_CANON_InitiateDirectTansferEx 0x9026 |
263 #define PTP_OC_CANON_GetAncillaryObjectHandles 0x9027 | 273 #define PTP_OC_CANON_GetAncillaryObjectHandles 0x9027 |
264 #define PTP_OC_CANON_GetTreeInfo 0x9028 | 274 #define PTP_OC_CANON_GetTreeInfo 0x9028 |
265 #define PTP_OC_CANON_GetTreeSize 0x9029 | 275 #define PTP_OC_CANON_GetTreeSize 0x9029 |
266 #define PTP_OC_CANON_NotifyProgress 0x902A | 276 #define PTP_OC_CANON_NotifyProgress 0x902A |
267 #define PTP_OC_CANON_NotifyCancelAccepted 0x902B | 277 #define PTP_OC_CANON_NotifyCancelAccepted 0x902B |
268 /* 902c: no parms, read 3 uint32 in data, no response parms */ | 278 /* 902c: no parms, read 3 uint32 in data, no response parms */ |
269 #define PTP_OC_CANON_902C 0x902C | 279 #define PTP_OC_CANON_902C 0x902C |
270 #define PTP_OC_CANON_GetDirectory 0x902D | 280 #define PTP_OC_CANON_GetDirectory 0x902D |
| 281 #define PTP_OC_CANON_902E 0x902E |
271 | 282 |
272 #define PTP_OC_CANON_SetPairingInfo 0x9030 | 283 #define PTP_OC_CANON_SetPairingInfo 0x9030 |
273 #define PTP_OC_CANON_GetPairingInfo 0x9031 | 284 #define PTP_OC_CANON_GetPairingInfo 0x9031 |
274 #define PTP_OC_CANON_DeletePairingInfo 0x9032 | 285 #define PTP_OC_CANON_DeletePairingInfo 0x9032 |
275 #define PTP_OC_CANON_GetMACAddress 0x9033 | 286 #define PTP_OC_CANON_GetMACAddress 0x9033 |
276 /* 9034: 1 param, no parms returned */ | 287 /* 9034: 1 param, no parms returned */ |
277 #define PTP_OC_CANON_SetDisplayMonitor 0x9034 | 288 #define PTP_OC_CANON_SetDisplayMonitor 0x9034 |
278 #define PTP_OC_CANON_PairingComplete 0x9035 | 289 #define PTP_OC_CANON_PairingComplete 0x9035 |
279 #define PTP_OC_CANON_GetWirelessMAXChannel 0x9036 | 290 #define PTP_OC_CANON_GetWirelessMAXChannel 0x9036 |
280 | 291 |
| 292 #define PTP_OC_CANON_GetWebServiceSpec 0x9068 |
| 293 #define PTP_OC_CANON_GetWebServiceData 0x9069 |
| 294 #define PTP_OC_CANON_SetWebServiceData 0x906B |
| 295 #define PTP_OC_CANON_GetRootCertificateSpec 0x906C |
| 296 #define PTP_OC_CANON_GetRootCertificateData 0x906D |
| 297 #define PTP_OC_CANON_SetRootCertificateData 0x906F |
| 298 |
281 /* 9101: no args, 8 byte data (01 00 00 00 00 00 00 00), no resp data. */ | 299 /* 9101: no args, 8 byte data (01 00 00 00 00 00 00 00), no resp data. */ |
282 #define PTP_OC_CANON_EOS_GetStorageIDs 0x9101 | 300 #define PTP_OC_CANON_EOS_GetStorageIDs 0x9101 |
283 /* 9102: 1 arg (0) | 301 /* 9102: 1 arg (0) |
284 * 0x28 bytes of data: | 302 * 0x28 bytes of data: |
285 00000000: 34 00 00 00 02 00 02 91 0a 00 00 00 04 00 03 00 | 303 00000000: 34 00 00 00 02 00 02 91 0a 00 00 00 04 00 03 00 |
286 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | 304 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |
287 00000020: 00 00 ff ff ff ff 03 43 00 46 00 00 00 03 41 00 | 305 00000020: 00 00 ff ff ff ff 03 43 00 46 00 00 00 03 41 00 |
288 00000030: 3a 00 00 00 | 306 00000030: 3a 00 00 00 |
289 * no resp args | 307 * no resp args |
290 */ | 308 */ |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
352 /* 911b: no cmd args, no data, no resp args */ | 370 /* 911b: no cmd args, no data, no resp args */ |
353 #define PTP_OC_CANON_EOS_SetUILock 0x911B | 371 #define PTP_OC_CANON_EOS_SetUILock 0x911B |
354 /* 911c: no cmd args, no data, no resp args */ | 372 /* 911c: no cmd args, no data, no resp args */ |
355 #define PTP_OC_CANON_EOS_ResetUILock 0x911C | 373 #define PTP_OC_CANON_EOS_ResetUILock 0x911C |
356 #define PTP_OC_CANON_EOS_KeepDeviceOn 0x911D | 374 #define PTP_OC_CANON_EOS_KeepDeviceOn 0x911D |
357 #define PTP_OC_CANON_EOS_SetNullPacketMode 0x911E | 375 #define PTP_OC_CANON_EOS_SetNullPacketMode 0x911E |
358 #define PTP_OC_CANON_EOS_UpdateFirmware 0x911F | 376 #define PTP_OC_CANON_EOS_UpdateFirmware 0x911F |
359 #define PTP_OC_CANON_EOS_TransferCompleteDT 0x9120 | 377 #define PTP_OC_CANON_EOS_TransferCompleteDT 0x9120 |
360 #define PTP_OC_CANON_EOS_CancelTransferDT 0x9121 | 378 #define PTP_OC_CANON_EOS_CancelTransferDT 0x9121 |
361 #define PTP_OC_CANON_EOS_SetWftProfile 0x9122 | 379 #define PTP_OC_CANON_EOS_SetWftProfile 0x9122 |
362 #define PTP_OC_CANON_EOS_GetWftProfile» » 0x9122 | 380 #define PTP_OC_CANON_EOS_GetWftProfile» » 0x9123 |
363 #define PTP_OC_CANON_EOS_SetProfileToWft 0x9124 | 381 #define PTP_OC_CANON_EOS_SetProfileToWft 0x9124 |
364 #define PTP_OC_CANON_EOS_BulbStart 0x9125 | 382 #define PTP_OC_CANON_EOS_BulbStart 0x9125 |
365 #define PTP_OC_CANON_EOS_BulbEnd 0x9126 | 383 #define PTP_OC_CANON_EOS_BulbEnd 0x9126 |
366 #define PTP_OC_CANON_EOS_RequestDevicePropValue 0x9127 | 384 #define PTP_OC_CANON_EOS_RequestDevicePropValue 0x9127 |
367 | 385 |
368 /* 0x9128 args (0x1/0x2, 0x0), no data, no resp args */ | 386 /* 0x9128 args (0x1/0x2, 0x0), no data, no resp args */ |
369 #define PTP_OC_CANON_EOS_RemoteReleaseOn 0x9128 | 387 #define PTP_OC_CANON_EOS_RemoteReleaseOn 0x9128 |
370 /* 0x9129 args (0x1/0x2), no data, no resp args */ | 388 /* 0x9129 args (0x1/0x2), no data, no resp args */ |
371 #define PTP_OC_CANON_EOS_RemoteReleaseOff 0x9129 | 389 #define PTP_OC_CANON_EOS_RemoteReleaseOff 0x9129 |
372 | 390 |
| 391 #define PTP_OC_CANON_EOS_RegistBackgroundImage 0x912A |
| 392 #define PTP_OC_CANON_EOS_ChangePhotoStudioMode 0x912B |
| 393 #define PTP_OC_CANON_EOS_GetPartialObjectEx 0x912C |
| 394 #define PTP_OC_CANON_EOS_ResetMirrorLockupState 0x9130 |
| 395 #define PTP_OC_CANON_EOS_PopupBuiltinFlash 0x9131 |
| 396 #define PTP_OC_CANON_EOS_EndGetPartialObjectEx 0x9132 |
| 397 #define PTP_OC_CANON_EOS_MovieSelectSWOn 0x9133 |
| 398 #define PTP_OC_CANON_EOS_MovieSelectSWOff 0x9134 |
| 399 #define PTP_OC_CANON_EOS_GetCTGInfo 0x9135 |
| 400 #define PTP_OC_CANON_EOS_GetLensAdjust 0x9136 |
| 401 #define PTP_OC_CANON_EOS_SetLensAdjust 0x9137 |
| 402 #define PTP_OC_CANON_EOS_GetMusicInfo 0x9138 |
| 403 /* 3 paramaeters, no data, OFC, size, unknown */ |
| 404 #define PTP_OC_CANON_EOS_CreateHandle 0x9139 |
| 405 #define PTP_OC_CANON_EOS_SendPartialObjectEx 0x913A |
| 406 #define PTP_OC_CANON_EOS_EndSendPartialObjectEx 0x913B |
| 407 #define PTP_OC_CANON_EOS_SetCTGInfo 0x913C |
| 408 #define PTP_OC_CANON_EOS_SetRequestOLCInfoGroup 0x913D |
| 409 #define PTP_OC_CANON_EOS_SetRequestRollingPitchingLevel 0x913E |
| 410 #define PTP_OC_CANON_EOS_GetCameraSupport 0x913F |
| 411 #define PTP_OC_CANON_EOS_SetRating 0x9140 /* 2 args */ |
| 412 #define PTP_OC_CANON_EOS_RequestInnerDevelopStart 0x9141 /* 2 args: 1 type
, 1 object? */ |
| 413 #define PTP_OC_CANON_EOS_RequestInnerDevelopParamChange 0x9142 |
| 414 #define PTP_OC_CANON_EOS_RequestInnerDevelopEnd 0x9143 |
| 415 #define PTP_OC_CANON_EOS_GpsLoggingDataMode 0x9144 /* 1 arg */ |
| 416 #define PTP_OC_CANON_EOS_GetGpsLogCurrentHandle 0x9145 |
| 417 |
373 #define PTP_OC_CANON_EOS_InitiateViewfinder 0x9151 | 418 #define PTP_OC_CANON_EOS_InitiateViewfinder 0x9151 |
374 #define PTP_OC_CANON_EOS_TerminateViewfinder 0x9152 | 419 #define PTP_OC_CANON_EOS_TerminateViewfinder 0x9152 |
| 420 /* EOS M2 wlan: 2 params, 0x00200000 0x01000000 */ |
375 #define PTP_OC_CANON_EOS_GetViewFinderData 0x9153 | 421 #define PTP_OC_CANON_EOS_GetViewFinderData 0x9153 |
376 #define PTP_OC_CANON_EOS_DoAf 0x9154 | 422 #define PTP_OC_CANON_EOS_DoAf 0x9154 |
377 #define PTP_OC_CANON_EOS_DriveLens 0x9155 | 423 #define PTP_OC_CANON_EOS_DriveLens 0x9155 |
378 #define PTP_OC_CANON_EOS_DepthOfFieldPreview» 0x9156 | 424 #define PTP_OC_CANON_EOS_DepthOfFieldPreview» 0x9156 /* 1 arg */ |
379 #define PTP_OC_CANON_EOS_ClickWB» » 0x9157 | 425 #define PTP_OC_CANON_EOS_ClickWB» » 0x9157 /* 2 args: x,y */ |
380 #define PTP_OC_CANON_EOS_Zoom» » » 0x9158 | 426 #define PTP_OC_CANON_EOS_Zoom» » » 0x9158 /* 1 arg */ |
381 #define PTP_OC_CANON_EOS_ZoomPosition» » 0x9159 | 427 #define PTP_OC_CANON_EOS_ZoomPosition» » 0x9159 /* 2 args: x,y */ |
382 #define PTP_OC_CANON_EOS_SetLiveAfFrame»» 0x915a | 428 #define PTP_OC_CANON_EOS_SetLiveAfFrame»» 0x915A |
| 429 #define PTP_OC_CANON_EOS_TouchAfPosition» 0x915B /* 3 args: type,x,y */ |
| 430 #define PTP_OC_CANON_EOS_SetLvPcFlavoreditMode» 0x915C /* 1 arg */ |
| 431 #define PTP_OC_CANON_EOS_SetLvPcFlavoreditParam»0x915D /* 1 arg */ |
383 #define PTP_OC_CANON_EOS_AfCancel 0x9160 | 432 #define PTP_OC_CANON_EOS_AfCancel 0x9160 |
| 433 #define PTP_OC_CANON_EOS_SetDefaultCameraSetting 0x91BE |
| 434 #define PTP_OC_CANON_EOS_GetAEData 0x91BF |
| 435 #define PTP_OC_CANON_EOS_NotifyNetworkError 0x91E8 |
| 436 #define PTP_OC_CANON_EOS_AdapterTransferProgress 0x91E9 |
| 437 #define PTP_OC_CANON_EOS_TransferComplete2 0x91F0 |
| 438 #define PTP_OC_CANON_EOS_CancelTransfer2 0x91F1 |
384 #define PTP_OC_CANON_EOS_FAPIMessageTX 0x91FE | 439 #define PTP_OC_CANON_EOS_FAPIMessageTX 0x91FE |
385 #define PTP_OC_CANON_EOS_FAPIMessageRX 0x91FF | 440 #define PTP_OC_CANON_EOS_FAPIMessageRX 0x91FF |
386 | 441 |
387 /* Nikon extension Operation Codes */ | 442 /* Nikon extension Operation Codes */ |
388 #define PTP_OC_NIKON_GetProfileAllData 0x9006 | 443 #define PTP_OC_NIKON_GetProfileAllData 0x9006 |
389 #define PTP_OC_NIKON_SendProfileData 0x9007 | 444 #define PTP_OC_NIKON_SendProfileData 0x9007 |
390 #define PTP_OC_NIKON_DeleteProfile 0x9008 | 445 #define PTP_OC_NIKON_DeleteProfile 0x9008 |
391 #define PTP_OC_NIKON_SetProfileData 0x9009 | 446 #define PTP_OC_NIKON_SetProfileData 0x9009 |
392 #define PTP_OC_NIKON_AdvancedTransfer 0x9010 | 447 #define PTP_OC_NIKON_AdvancedTransfer 0x9010 |
393 #define PTP_OC_NIKON_GetFileInfoInBlock 0x9011 | 448 #define PTP_OC_NIKON_GetFileInfoInBlock 0x9011 |
394 #define PTP_OC_NIKON_Capture 0x90C0 /* 1 param, no data */ | 449 #define PTP_OC_NIKON_Capture 0x90C0 /* 1 param, no data */ |
395 #define PTP_OC_NIKON_AfDrive 0x90C1 /* no params, no data */ | 450 #define PTP_OC_NIKON_AfDrive 0x90C1 /* no params, no data */ |
396 #define PTP_OC_NIKON_SetControlMode» 0x90C2» /* 1 param, no data */ | 451 #define PTP_OC_NIKON_SetControlMode» 0x90C2» /* 1 param, no data */ |
397 #define PTP_OC_NIKON_DelImageSDRAM» 0x90C3» /* no params, no data */ | 452 #define PTP_OC_NIKON_DelImageSDRAM» 0x90C3» /* 1 param, no data */ |
398 #define PTP_OC_NIKON_GetLargeThumb 0x90C4 | 453 #define PTP_OC_NIKON_GetLargeThumb 0x90C4 |
399 #define PTP_OC_NIKON_CurveDownload 0x90C5 /* 1 param, data in */ | 454 #define PTP_OC_NIKON_CurveDownload 0x90C5 /* 1 param, data in */ |
400 #define PTP_OC_NIKON_CurveUpload 0x90C6 /* 1 param, data out */ | 455 #define PTP_OC_NIKON_CurveUpload 0x90C6 /* 1 param, data out */ |
401 #define PTP_OC_NIKON_CheckEvent 0x90C7 /* no params, data in */ | 456 #define PTP_OC_NIKON_CheckEvent 0x90C7 /* no params, data in */ |
402 #define PTP_OC_NIKON_DeviceReady 0x90C8 /* no params, no data */ | 457 #define PTP_OC_NIKON_DeviceReady 0x90C8 /* no params, no data */ |
403 #define PTP_OC_NIKON_SetPreWBData 0x90C9 /* 3 params, data out */ | 458 #define PTP_OC_NIKON_SetPreWBData 0x90C9 /* 3 params, data out */ |
404 #define PTP_OC_NIKON_GetVendorPropCodes 0x90CA /* 0 params, data in */ | 459 #define PTP_OC_NIKON_GetVendorPropCodes 0x90CA /* 0 params, data in */ |
405 #define PTP_OC_NIKON_AfCaptureSDRAM 0x90CB /* no params, no data */ | 460 #define PTP_OC_NIKON_AfCaptureSDRAM 0x90CB /* no params, no data */ |
406 #define PTP_OC_NIKON_GetPictCtrlData» 0x90CC | 461 #define PTP_OC_NIKON_GetPictCtrlData» 0x90CC» /* 2 params, data in */ |
407 #define PTP_OC_NIKON_SetPictCtrlData» 0x90CD | 462 #define PTP_OC_NIKON_SetPictCtrlData» 0x90CD» /* 2 params, data out */ |
408 #define PTP_OC_NIKON_DelCstPicCtrl» 0x90CE | 463 #define PTP_OC_NIKON_DelCstPicCtrl» 0x90CE» /* 1 param, no data */ |
409 #define PTP_OC_NIKON_GetPicCtrlCapability» 0x90CF | 464 #define PTP_OC_NIKON_GetPicCtrlCapability» 0x90CF» /* 1 param, data in */ |
410 | 465 |
411 /* Nikon Liveview stuff */ | 466 /* Nikon Liveview stuff */ |
412 #define PTP_OC_NIKON_GetPreviewImg 0x9200 | 467 #define PTP_OC_NIKON_GetPreviewImg 0x9200 |
413 #define PTP_OC_NIKON_StartLiveView» 0x9201 | 468 #define PTP_OC_NIKON_StartLiveView» 0x9201» /* no params */ |
414 #define PTP_OC_NIKON_EndLiveView» 0x9202 | 469 #define PTP_OC_NIKON_EndLiveView» 0x9202» /* no params */ |
415 #define PTP_OC_NIKON_GetLiveViewImg» 0x9203 | 470 #define PTP_OC_NIKON_GetLiveViewImg» 0x9203» /* no params, data in */ |
416 #define PTP_OC_NIKON_MfDrive» » 0x9204 | 471 #define PTP_OC_NIKON_MfDrive» » 0x9204» /* 2 params */ |
417 #define PTP_OC_NIKON_ChangeAfArea» 0x9205 | 472 #define PTP_OC_NIKON_ChangeAfArea» 0x9205» /* 2 params */ |
418 #define PTP_OC_NIKON_AfDriveCancel» 0x9206 | 473 #define PTP_OC_NIKON_AfDriveCancel» 0x9206» /* no params */ |
| 474 /* 2 params: |
| 475 * 0xffffffff == No AF before, 0xfffffffe == AF before capture |
| 476 * sdram=1, card=0 |
| 477 */ |
| 478 #define PTP_OC_NIKON_InitiateCaptureRecInMedia» 0x9207» /* 1 params */ |
| 479 |
| 480 #define PTP_OC_NIKON_GetVendorStorageIDs» 0x9209» /* no params, data in */ |
| 481 |
| 482 #define PTP_OC_NIKON_StartMovieRecInCard» 0x920a» /* no params, no data */ |
| 483 #define PTP_OC_NIKON_EndMovieRec» » 0x920b» /* no params, no data */ |
| 484 |
| 485 #define PTP_OC_NIKON_TerminateCapture» » 0x920c» /* 2 params */ |
419 | 486 |
420 #define PTP_OC_NIKON_GetDevicePTPIPInfo 0x90E0 | 487 #define PTP_OC_NIKON_GetDevicePTPIPInfo 0x90E0 |
421 | 488 |
| 489 #define PTP_OC_NIKON_GetPartialObjectHiSpeed 0x9400 /* 3 params, data in */ |
| 490 |
| 491 /* From Nikon V1 Trace */ |
| 492 #define PTP_OC_NIKON_GetDevicePropEx 0x9504 /* gets device prop data
a */ |
| 493 |
422 /* Casio EX-F1 (from http://code.google.com/p/exf1ctrl/ ) */ | 494 /* Casio EX-F1 (from http://code.google.com/p/exf1ctrl/ ) */ |
423 #define PTP_OC_CASIO_STILL_START 0x9001 | 495 #define PTP_OC_CASIO_STILL_START 0x9001 |
424 #define PTP_OC_CASIO_STILL_STOP 0x9002 | 496 #define PTP_OC_CASIO_STILL_STOP 0x9002 |
425 | 497 |
426 #define PTP_OC_CASIO_FOCUS 0x9007 | 498 #define PTP_OC_CASIO_FOCUS 0x9007 |
427 #define PTP_OC_CASIO_CF_PRESS 0x9009 | 499 #define PTP_OC_CASIO_CF_PRESS 0x9009 |
428 #define PTP_OC_CASIO_CF_RELEASE 0x900A | 500 #define PTP_OC_CASIO_CF_RELEASE 0x900A |
429 #define PTP_OC_CASIO_GET_OBJECT_INFO 0x900C | 501 #define PTP_OC_CASIO_GET_OBJECT_INFO 0x900C |
430 | 502 |
431 #define PTP_OC_CASIO_SHUTTER 0x9024 | 503 #define PTP_OC_CASIO_SHUTTER 0x9024 |
(...skipping 11 matching lines...) Expand all Loading... |
443 #define PTP_OC_CASIO_MOVIE_START 0x9041 | 515 #define PTP_OC_CASIO_MOVIE_START 0x9041 |
444 #define PTP_OC_CASIO_MOVIE_STOP 0x9042 | 516 #define PTP_OC_CASIO_MOVIE_STOP 0x9042 |
445 #define PTP_OC_CASIO_MOVIE_PRESS 0x9043 | 517 #define PTP_OC_CASIO_MOVIE_PRESS 0x9043 |
446 #define PTP_OC_CASIO_MOVIE_RELEASE 0x9044 | 518 #define PTP_OC_CASIO_MOVIE_RELEASE 0x9044 |
447 #define PTP_OC_CASIO_GET_MOVIE_HANDLES 0x9045 | 519 #define PTP_OC_CASIO_GET_MOVIE_HANDLES 0x9045 |
448 #define PTP_OC_CASIO_MOVIE_RESET 0x9046 | 520 #define PTP_OC_CASIO_MOVIE_RESET 0x9046 |
449 | 521 |
450 #define PTP_OC_CASIO_GET_OBJECT 0x9025 | 522 #define PTP_OC_CASIO_GET_OBJECT 0x9025 |
451 #define PTP_OC_CASIO_GET_THUMBNAIL 0x9026 | 523 #define PTP_OC_CASIO_GET_THUMBNAIL 0x9026 |
452 | 524 |
| 525 /* Sony stuff */ |
| 526 /* 9201: |
| 527 * 3 params: 1,0,0 ; IN: data 8 bytes all 0 |
| 528 * or: |
| 529 * 3 params: 2,0,0 ; IN: data 8 bytes all 0 |
| 530 * or |
| 531 * 3 params: 3,0,0,: IN: data 8 butes all 0 |
| 532 */ |
| 533 #define PTP_OC_SONY_SDIOConnect 0x9201 |
| 534 /* 9202: 1 param, 0xc8; IN data: |
| 535 * 16 bit: 0xc8 |
| 536 * ptp array 32 bit: index, 16 bit values of propcodes */ |
| 537 #define PTP_OC_SONY_GetSDIOGetExtDeviceInfo 0x9202 |
| 538 |
| 539 #define PTP_OC_SONY_GetDevicePropdesc 0x9203 |
| 540 #define PTP_OC_SONY_GetDevicePropertyValue 0x9204 |
| 541 /* 1 param, 16bit propcode, SEND DATA: propvalue */ |
| 542 #define PTP_OC_SONY_SetControlDeviceA 0x9205 |
| 543 #define PTP_OC_SONY_GetControlDeviceDesc 0x9206 |
| 544 /* 1 param, 16bit propcode, SEND DATA: propvalue */ |
| 545 #define PTP_OC_SONY_SetControlDeviceB 0x9207 |
| 546 /* get all device property data at once */ |
| 547 #define PTP_OC_SONY_GetAllDevicePropData 0x9209 /* gets a 4126 byte blob
of device props ?*/ |
| 548 |
453 /* Microsoft / MTP extension codes */ | 549 /* Microsoft / MTP extension codes */ |
454 | 550 |
455 #define PTP_OC_MTP_GetObjectPropsSupported 0x9801 | 551 #define PTP_OC_MTP_GetObjectPropsSupported 0x9801 |
456 #define PTP_OC_MTP_GetObjectPropDesc 0x9802 | 552 #define PTP_OC_MTP_GetObjectPropDesc 0x9802 |
457 #define PTP_OC_MTP_GetObjectPropValue 0x9803 | 553 #define PTP_OC_MTP_GetObjectPropValue 0x9803 |
458 #define PTP_OC_MTP_SetObjectPropValue 0x9804 | 554 #define PTP_OC_MTP_SetObjectPropValue 0x9804 |
459 #define PTP_OC_MTP_GetObjPropList 0x9805 | 555 #define PTP_OC_MTP_GetObjPropList 0x9805 |
460 #define PTP_OC_MTP_SetObjPropList 0x9806 | 556 #define PTP_OC_MTP_SetObjPropList 0x9806 |
461 #define PTP_OC_MTP_GetInterdependendPropdesc 0x9807 | 557 #define PTP_OC_MTP_GetInterdependendPropdesc 0x9807 |
462 #define PTP_OC_MTP_SendObjectPropList 0x9808 | 558 #define PTP_OC_MTP_SendObjectPropList 0x9808 |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
535 /* Olympus E series commands */ | 631 /* Olympus E series commands */ |
536 #define PTP_OC_OLYMPUS_Capture 0x9101 | 632 #define PTP_OC_OLYMPUS_Capture 0x9101 |
537 #define PTP_OC_OLYMPUS_SelfCleaning 0x9103 | 633 #define PTP_OC_OLYMPUS_SelfCleaning 0x9103 |
538 #define PTP_OC_OLYMPUS_SetRGBGain 0x9106 | 634 #define PTP_OC_OLYMPUS_SetRGBGain 0x9106 |
539 #define PTP_OC_OLYMPUS_SetPresetMode 0x9107 | 635 #define PTP_OC_OLYMPUS_SetPresetMode 0x9107 |
540 #define PTP_OC_OLYMPUS_SetWBBiasAll 0x9108 | 636 #define PTP_OC_OLYMPUS_SetWBBiasAll 0x9108 |
541 #define PTP_OC_OLYMPUS_GetCameraControlMode 0x910a | 637 #define PTP_OC_OLYMPUS_GetCameraControlMode 0x910a |
542 #define PTP_OC_OLYMPUS_SetCameraControlMode 0x910b | 638 #define PTP_OC_OLYMPUS_SetCameraControlMode 0x910b |
543 #define PTP_OC_OLYMPUS_SetWBRGBGain 0x910c | 639 #define PTP_OC_OLYMPUS_SetWBRGBGain 0x910c |
544 #define PTP_OC_OLYMPUS_GetDeviceInfo 0x9301 | 640 #define PTP_OC_OLYMPUS_GetDeviceInfo 0x9301 |
545 #define PTP_OC_OLYMPUS_Init1» » » » 0x9302 | 641 #define PTP_OC_OLYMPUS_OpenSession» » » 0x9302 |
546 #define PTP_OC_OLYMPUS_SetDateTime 0x9402 | 642 #define PTP_OC_OLYMPUS_SetDateTime 0x9402 |
547 #define PTP_OC_OLYMPUS_GetDateTime 0x9482 | 643 #define PTP_OC_OLYMPUS_GetDateTime 0x9482 |
548 #define PTP_OC_OLYMPUS_SetCameraID 0x9501 | 644 #define PTP_OC_OLYMPUS_SetCameraID 0x9501 |
549 #define PTP_OC_OLYMPUS_GetCameraID 0x9581 | 645 #define PTP_OC_OLYMPUS_GetCameraID 0x9581 |
550 | 646 |
| 647 /* Android Random I/O Extensions Codes */ |
| 648 #define PTP_OC_ANDROID_GetPartialObject64 0x95C1 |
| 649 #define PTP_OC_ANDROID_SendPartialObject 0x95C2 |
| 650 #define PTP_OC_ANDROID_TruncateObject 0x95C3 |
| 651 #define PTP_OC_ANDROID_BeginEditObject 0x95C4 |
| 652 #define PTP_OC_ANDROID_EndEditObject 0x95C5 |
| 653 |
| 654 /* Leica opcodes, from Lightroom tether plugin */ |
| 655 #define PTP_OC_LEICA_SetCameraSettings 0x9001 |
| 656 #define PTP_OC_LEICA_GetCameraSettings 0x9002 |
| 657 #define PTP_OC_LEICA_GetLensParameter 0x9003 |
| 658 /* probably 2 arguments. |
| 659 * generic: releaseStage, stepSize |
| 660 * Release(releasestage) = (releasestage,0) |
| 661 * Release() = (0,0) |
| 662 * AEStart() = (1,0) |
| 663 * Autofocusrelease() = (2,0) |
| 664 * AutofocusPush() = (1,0) ... same as AEStart? |
| 665 * KeepCameraActive() = (0xe,0) |
| 666 */ |
| 667 #define PTP_OC_LEICA_Release 0x9004 |
| 668 #define PTP_OC_LEICA_OpenLESession 0x9005 |
| 669 #define PTP_OC_LEICA_CloseLESession 0x9006 |
| 670 #define PTP_OC_LEICA_RequestObjectTransferReady 0x9007 |
| 671 |
551 /* Proprietary vendor extension operations mask */ | 672 /* Proprietary vendor extension operations mask */ |
552 #define PTP_OC_EXTENSION_MASK 0xF000 | 673 #define PTP_OC_EXTENSION_MASK 0xF000 |
553 #define PTP_OC_EXTENSION 0x9000 | 674 #define PTP_OC_EXTENSION 0x9000 |
554 | 675 |
555 /* Response Codes */ | 676 /* Response Codes */ |
556 | 677 |
557 /* PTP v1.0 response codes */ | 678 /* PTP v1.0 response codes */ |
558 #define PTP_RC_Undefined 0x2000 | 679 #define PTP_RC_Undefined 0x2000 |
559 #define PTP_RC_OK 0x2001 | 680 #define PTP_RC_OK 0x2001 |
560 #define PTP_RC_GeneralError 0x2002 | 681 #define PTP_RC_GeneralError 0x2002 |
561 #define PTP_RC_SessionNotOpen 0x2003 | 682 #define PTP_RC_SessionNotOpen 0x2003 |
562 #define PTP_RC_InvalidTransactionID» 0x2004 | 683 #define PTP_RC_InvalidTransactionID 0x2004 |
563 #define PTP_RC_OperationNotSupported 0x2005 | 684 #define PTP_RC_OperationNotSupported 0x2005 |
564 #define PTP_RC_ParameterNotSupported 0x2006 | 685 #define PTP_RC_ParameterNotSupported 0x2006 |
565 #define PTP_RC_IncompleteTransfer 0x2007 | 686 #define PTP_RC_IncompleteTransfer 0x2007 |
566 #define PTP_RC_InvalidStorageId 0x2008 | 687 #define PTP_RC_InvalidStorageId 0x2008 |
567 #define PTP_RC_InvalidObjectHandle 0x2009 | 688 #define PTP_RC_InvalidObjectHandle 0x2009 |
568 #define PTP_RC_DevicePropNotSupported 0x200A | 689 #define PTP_RC_DevicePropNotSupported 0x200A |
569 #define PTP_RC_InvalidObjectFormatCode 0x200B | 690 #define PTP_RC_InvalidObjectFormatCode 0x200B |
570 #define PTP_RC_StoreFull 0x200C | 691 #define PTP_RC_StoreFull 0x200C |
571 #define PTP_RC_ObjectWriteProtected 0x200D | 692 #define PTP_RC_ObjectWriteProtected 0x200D |
572 #define PTP_RC_StoreReadOnly 0x200E | 693 #define PTP_RC_StoreReadOnly 0x200E |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
639 (microsoft.com/AAVT 1.0) */ | 760 (microsoft.com/AAVT 1.0) */ |
640 #define PTP_RC_MTP_Invalid_Media_Session_ID 0xA170 | 761 #define PTP_RC_MTP_Invalid_Media_Session_ID 0xA170 |
641 #define PTP_RC_MTP_Media_Session_Limit_Reached 0xA171 | 762 #define PTP_RC_MTP_Media_Session_Limit_Reached 0xA171 |
642 #define PTP_RC_MTP_No_More_Data 0xA172 | 763 #define PTP_RC_MTP_No_More_Data 0xA172 |
643 | 764 |
644 /* WiFi Provisioning MTP Extension Error Codes (microsoft.com/WPDWCN: 1.0) */ | 765 /* WiFi Provisioning MTP Extension Error Codes (microsoft.com/WPDWCN: 1.0) */ |
645 #define PTP_RC_MTP_Invalid_WFC_Syntax 0xA121 | 766 #define PTP_RC_MTP_Invalid_WFC_Syntax 0xA121 |
646 #define PTP_RC_MTP_WFC_Version_Not_Supported 0xA122 | 767 #define PTP_RC_MTP_WFC_Version_Not_Supported 0xA122 |
647 | 768 |
648 /* libptp2 extended ERROR codes */ | 769 /* libptp2 extended ERROR codes */ |
| 770 #define PTP_ERROR_TIMEOUT 0x02FA |
| 771 #define PTP_ERROR_CANCEL 0x02FB |
| 772 #define PTP_ERROR_BADPARAM 0x02FC |
| 773 #define PTP_ERROR_RESP_EXPECTED 0x02FD |
| 774 #define PTP_ERROR_DATA_EXPECTED 0x02FE |
649 #define PTP_ERROR_IO 0x02FF | 775 #define PTP_ERROR_IO 0x02FF |
650 #define PTP_ERROR_DATA_EXPECTED 0x02FE | |
651 #define PTP_ERROR_RESP_EXPECTED 0x02FD | |
652 #define PTP_ERROR_BADPARAM 0x02FC | |
653 #define PTP_ERROR_CANCEL 0x02FB | |
654 #define PTP_ERROR_TIMEOUT 0x02FA | |
655 | 776 |
656 /* PTP Event Codes */ | 777 /* PTP Event Codes */ |
657 | 778 |
658 #define PTP_EC_Undefined 0x4000 | 779 #define PTP_EC_Undefined 0x4000 |
659 #define PTP_EC_CancelTransaction 0x4001 | 780 #define PTP_EC_CancelTransaction 0x4001 |
660 #define PTP_EC_ObjectAdded 0x4002 | 781 #define PTP_EC_ObjectAdded 0x4002 |
661 #define PTP_EC_ObjectRemoved 0x4003 | 782 #define PTP_EC_ObjectRemoved 0x4003 |
662 #define PTP_EC_StoreAdded 0x4004 | 783 #define PTP_EC_StoreAdded 0x4004 |
663 #define PTP_EC_StoreRemoved 0x4005 | 784 #define PTP_EC_StoreRemoved 0x4005 |
664 #define PTP_EC_DevicePropChanged 0x4006 | 785 #define PTP_EC_DevicePropChanged 0x4006 |
665 #define PTP_EC_ObjectInfoChanged 0x4007 | 786 #define PTP_EC_ObjectInfoChanged 0x4007 |
666 #define PTP_EC_DeviceInfoChanged 0x4008 | 787 #define PTP_EC_DeviceInfoChanged 0x4008 |
667 #define PTP_EC_RequestObjectTransfer 0x4009 | 788 #define PTP_EC_RequestObjectTransfer 0x4009 |
668 #define PTP_EC_StoreFull 0x400A | 789 #define PTP_EC_StoreFull 0x400A |
669 #define PTP_EC_DeviceReset 0x400B | 790 #define PTP_EC_DeviceReset 0x400B |
670 #define PTP_EC_StorageInfoChanged 0x400C | 791 #define PTP_EC_StorageInfoChanged 0x400C |
671 #define PTP_EC_CaptureComplete 0x400D | 792 #define PTP_EC_CaptureComplete 0x400D |
672 #define PTP_EC_UnreportedStatus 0x400E | 793 #define PTP_EC_UnreportedStatus 0x400E |
673 | 794 |
674 /* Canon extension Event Codes */ | 795 /* Canon extension Event Codes */ |
675 #define PTP_EC_CANON_ExtendedErrorcode 0xC005 /* ? */ | 796 #define PTP_EC_CANON_ExtendedErrorcode 0xC005 /* ? */ |
676 #define PTP_EC_CANON_ObjectInfoChanged 0xC008 | 797 #define PTP_EC_CANON_ObjectInfoChanged 0xC008 |
677 #define PTP_EC_CANON_RequestObjectTransfer 0xC009 | 798 #define PTP_EC_CANON_RequestObjectTransfer 0xC009 |
| 799 #define PTP_EC_CANON_ShutterButtonPressed0 0xC00B |
678 #define PTP_EC_CANON_CameraModeChanged 0xC00C | 800 #define PTP_EC_CANON_CameraModeChanged 0xC00C |
679 #define PTP_EC_CANON_ShutterButtonPressed» 0xC00E | 801 #define PTP_EC_CANON_ShutterButtonPressed1» 0xC00E |
680 | 802 |
681 #define PTP_EC_CANON_StartDirectTransfer 0xC011 | 803 #define PTP_EC_CANON_StartDirectTransfer 0xC011 |
682 #define PTP_EC_CANON_StopDirectTransfer 0xC013 | 804 #define PTP_EC_CANON_StopDirectTransfer 0xC013 |
683 | 805 |
684 /* Canon EOS events */ | 806 /* Canon EOS events */ |
685 #define PTP_EC_CANON_EOS_RequestGetEvent» 0xc101 | 807 #define PTP_EC_CANON_EOS_RequestGetEvent» » 0xc101 |
686 #define PTP_EC_CANON_EOS_ObjectAddedEx» » 0xc181 | 808 #define PTP_EC_CANON_EOS_ObjectAddedEx» » » 0xc181 |
687 #define PTP_EC_CANON_EOS_ObjectRemoved» » 0xc182 | 809 #define PTP_EC_CANON_EOS_ObjectRemoved» » » 0xc182 |
688 #define PTP_EC_CANON_EOS_RequestGetObjectInfoEx»0xc183 | 810 #define PTP_EC_CANON_EOS_RequestGetObjectInfoEx»» 0xc183 |
689 #define PTP_EC_CANON_EOS_StorageStatusChanged» 0xc184 | 811 #define PTP_EC_CANON_EOS_StorageStatusChanged» » 0xc184 |
690 #define PTP_EC_CANON_EOS_StorageInfoChanged» 0xc185 | 812 #define PTP_EC_CANON_EOS_StorageInfoChanged» » 0xc185 |
691 #define PTP_EC_CANON_EOS_RequestObjectTransfer» 0xc186 | 813 #define PTP_EC_CANON_EOS_RequestObjectTransfer» » 0xc186 |
692 #define PTP_EC_CANON_EOS_ObjectInfoChangedEx» 0xc187 | 814 #define PTP_EC_CANON_EOS_ObjectInfoChangedEx» » 0xc187 |
693 #define PTP_EC_CANON_EOS_ObjectContentChanged» 0xc188 | 815 #define PTP_EC_CANON_EOS_ObjectContentChanged» » 0xc188 |
694 #define PTP_EC_CANON_EOS_PropValueChanged» 0xc189 | 816 #define PTP_EC_CANON_EOS_PropValueChanged» » 0xc189 |
695 #define PTP_EC_CANON_EOS_AvailListChanged» 0xc18a | 817 #define PTP_EC_CANON_EOS_AvailListChanged» » 0xc18a |
696 #define PTP_EC_CANON_EOS_CameraStatusChanged» 0xc18b | 818 #define PTP_EC_CANON_EOS_CameraStatusChanged» » 0xc18b |
697 #define PTP_EC_CANON_EOS_WillSoonShutdown» 0xc18d | 819 #define PTP_EC_CANON_EOS_WillSoonShutdown» » 0xc18d |
698 #define PTP_EC_CANON_EOS_ShutdownTimerUpdated» 0xc18e | 820 #define PTP_EC_CANON_EOS_ShutdownTimerUpdated» » 0xc18e |
699 #define PTP_EC_CANON_EOS_RequestCancelTransfer» 0xc18f | 821 #define PTP_EC_CANON_EOS_RequestCancelTransfer» » 0xc18f |
700 #define PTP_EC_CANON_EOS_RequestObjectTransferDT 0xc190 | 822 #define PTP_EC_CANON_EOS_RequestObjectTransferDT 0xc190 |
701 #define PTP_EC_CANON_EOS_RequestCancelTransferDT 0xc191 | 823 #define PTP_EC_CANON_EOS_RequestCancelTransferDT 0xc191 |
702 #define PTP_EC_CANON_EOS_StoreAdded» » 0xc192 | 824 #define PTP_EC_CANON_EOS_StoreAdded» » » 0xc192 |
703 #define PTP_EC_CANON_EOS_StoreRemoved» » 0xc193 | 825 #define PTP_EC_CANON_EOS_StoreRemoved» » » 0xc193 |
704 #define PTP_EC_CANON_EOS_BulbExposureTime» 0xc194 | 826 #define PTP_EC_CANON_EOS_BulbExposureTime» » 0xc194 |
705 #define PTP_EC_CANON_EOS_RecordingTime» » 0xc195 | 827 #define PTP_EC_CANON_EOS_RecordingTime» » » 0xc195 |
706 #define PTP_EC_CANON_EOS_RequestObjectTransferTS» » 0xC1a2 | 828 #define PTP_EC_CANON_EOS_RequestObjectTransferTS» 0xC1a2 |
707 #define PTP_EC_CANON_EOS_AfResult» » 0xc1a3 | 829 #define PTP_EC_CANON_EOS_AfResult» » » 0xc1a3 |
| 830 #define PTP_EC_CANON_EOS_CTGInfoCheckComplete» » 0xc1a4 |
| 831 #define PTP_EC_CANON_EOS_OLCInfoChanged»» » 0xc1a5 |
| 832 #define PTP_EC_CANON_EOS_RequestObjectTransferFTP» 0xc1f1 |
708 | 833 |
709 /* Nikon extension Event Codes */ | 834 /* Nikon extension Event Codes */ |
710 | 835 |
711 /* Nikon extension Event Codes */ | 836 /* Nikon extension Event Codes */ |
712 #define PTP_EC_Nikon_ObjectAddedInSDRAM 0xC101 | 837 #define PTP_EC_Nikon_ObjectAddedInSDRAM 0xC101 |
713 #define PTP_EC_Nikon_CaptureCompleteRecInSdram 0xC102 | 838 #define PTP_EC_Nikon_CaptureCompleteRecInSdram 0xC102 |
714 /* Gets 1 parameter, objectid pointing to DPOF object */ | 839 /* Gets 1 parameter, objectid pointing to DPOF object */ |
715 #define PTP_EC_Nikon_AdvancedTransfer 0xC103 | 840 #define PTP_EC_Nikon_AdvancedTransfer 0xC103 |
716 #define PTP_EC_Nikon_PreviewImageAdded 0xC104 | 841 #define PTP_EC_Nikon_PreviewImageAdded 0xC104 |
717 | 842 |
| 843 /* Olympus E series */ |
| 844 #define PTP_EC_Olympus_PropertyChanged 0xC102 |
| 845 #define PTP_EC_Olympus_CaptureComplete 0xC103 |
| 846 |
| 847 /* Sony */ |
| 848 #define PTP_EC_Sony_ObjectAdded 0xC201 |
| 849 #define PTP_EC_Sony_ObjectRemoved 0xC202 |
| 850 #define PTP_EC_Sony_PropertyChanged 0xC203 |
| 851 |
718 /* MTP Event codes */ | 852 /* MTP Event codes */ |
719 #define PTP_EC_MTP_ObjectPropChanged 0xC801 | 853 #define PTP_EC_MTP_ObjectPropChanged 0xC801 |
720 #define PTP_EC_MTP_ObjectPropDescChanged 0xC802 | 854 #define PTP_EC_MTP_ObjectPropDescChanged 0xC802 |
721 #define PTP_EC_MTP_ObjectReferencesChanged 0xC803 | 855 #define PTP_EC_MTP_ObjectReferencesChanged 0xC803 |
722 | 856 |
723 /* constants for GetObjectHandles */ | 857 /* constants for GetObjectHandles */ |
724 #define PTP_GOH_ALL_STORAGE 0xffffffff | 858 #define PTP_GOH_ALL_STORAGE 0xffffffff |
725 #define PTP_GOH_ALL_FORMATS 0x00000000 | 859 #define PTP_GOH_ALL_FORMATS 0x00000000 |
726 #define PTP_GOH_ALL_ASSOCS 0x00000000 | 860 #define PTP_GOH_ALL_ASSOCS 0x00000000 |
727 #define PTP_GOH_ROOT_PARENT 0xffffffff | 861 #define PTP_GOH_ROOT_PARENT 0xffffffff |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
853 #define PTP_OFC_JP2 0x380F | 987 #define PTP_OFC_JP2 0x380F |
854 #define PTP_OFC_JPX 0x3810 | 988 #define PTP_OFC_JPX 0x3810 |
855 /* ptp v1.1 has only DNG new */ | 989 /* ptp v1.1 has only DNG new */ |
856 #define PTP_OFC_DNG 0x3811 | 990 #define PTP_OFC_DNG 0x3811 |
857 /* Eastman Kodak extension ancillary format */ | 991 /* Eastman Kodak extension ancillary format */ |
858 #define PTP_OFC_EK_M3U 0xb002 | 992 #define PTP_OFC_EK_M3U 0xb002 |
859 /* Canon extension */ | 993 /* Canon extension */ |
860 #define PTP_OFC_CANON_CRW 0xb101 | 994 #define PTP_OFC_CANON_CRW 0xb101 |
861 #define PTP_OFC_CANON_CRW3 0xb103 | 995 #define PTP_OFC_CANON_CRW3 0xb103 |
862 #define PTP_OFC_CANON_MOV 0xb104 | 996 #define PTP_OFC_CANON_MOV 0xb104 |
| 997 #define PTP_OFC_CANON_MOV2 0xb105 |
863 /* CHDK specific raw mode */ | 998 /* CHDK specific raw mode */ |
864 #define PTP_OFC_CANON_CHDK_CRW 0xb1ff | 999 #define PTP_OFC_CANON_CHDK_CRW 0xb1ff |
| 1000 /* Sony */ |
| 1001 #define PTP_OFC_SONY_RAW 0xb101 |
865 /* MTP extensions */ | 1002 /* MTP extensions */ |
866 #define PTP_OFC_MTP_MediaCard 0xb211 | 1003 #define PTP_OFC_MTP_MediaCard 0xb211 |
867 #define PTP_OFC_MTP_MediaCardGroup 0xb212 | 1004 #define PTP_OFC_MTP_MediaCardGroup 0xb212 |
868 #define PTP_OFC_MTP_Encounter 0xb213 | 1005 #define PTP_OFC_MTP_Encounter 0xb213 |
869 #define PTP_OFC_MTP_EncounterBox 0xb214 | 1006 #define PTP_OFC_MTP_EncounterBox 0xb214 |
870 #define PTP_OFC_MTP_M4A 0xb215 | 1007 #define PTP_OFC_MTP_M4A 0xb215 |
871 #define PTP_OFC_MTP_ZUNEUNDEFINED 0xb217 /* Unknown file type */ | 1008 #define PTP_OFC_MTP_ZUNEUNDEFINED 0xb217 /* Unknown file type */ |
872 #define PTP_OFC_MTP_Firmware 0xb802 | 1009 #define PTP_OFC_MTP_Firmware 0xb802 |
873 #define PTP_OFC_MTP_WindowsImageFormat 0xb881 | 1010 #define PTP_OFC_MTP_WindowsImageFormat 0xb881 |
874 #define PTP_OFC_MTP_UndefinedAudio 0xb900 | 1011 #define PTP_OFC_MTP_UndefinedAudio 0xb900 |
(...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1117 uint8_t wifi_channel; /* 1-11 */ | 1254 uint8_t wifi_channel; /* 1-11 */ |
1118 uint8_t authentification; /* 0 - Open, 1 - Shared, 2 - WPA-PSK */ | 1255 uint8_t authentification; /* 0 - Open, 1 - Shared, 2 - WPA-PSK */ |
1119 uint8_t encryption; /* 0 - None, 1 - WEP 64bit, 2 - WEP 128bit (not su
pported: 3 - TKIP) */ | 1256 uint8_t encryption; /* 0 - None, 1 - WEP 64bit, 2 - WEP 128bit (not su
pported: 3 - TKIP) */ |
1120 uint8_t key[64]; | 1257 uint8_t key[64]; |
1121 uint8_t key_nr; | 1258 uint8_t key_nr; |
1122 /* char guid[16]; */ | 1259 /* char guid[16]; */ |
1123 }; | 1260 }; |
1124 | 1261 |
1125 typedef struct _PTPNIKONWifiProfile PTPNIKONWifiProfile; | 1262 typedef struct _PTPNIKONWifiProfile PTPNIKONWifiProfile; |
1126 | 1263 |
1127 #define PTP_CANON_EOS_CHANGES_TYPE_UNKNOWN» » 0 | 1264 enum _PTPCanon_changes_types { |
1128 #define PTP_CANON_EOS_CHANGES_TYPE_OBJECTINFO» » 1 | 1265 » PTP_CANON_EOS_CHANGES_TYPE_UNKNOWN, |
1129 #define PTP_CANON_EOS_CHANGES_TYPE_OBJECTTRANSFER» 2 | 1266 » PTP_CANON_EOS_CHANGES_TYPE_OBJECTINFO, |
1130 #define PTP_CANON_EOS_CHANGES_TYPE_PROPERTY» » 3 | 1267 » PTP_CANON_EOS_CHANGES_TYPE_OBJECTTRANSFER, |
1131 #define PTP_CANON_EOS_CHANGES_TYPE_CAMERASTATUS»» 4 | 1268 » PTP_CANON_EOS_CHANGES_TYPE_PROPERTY, |
| 1269 » PTP_CANON_EOS_CHANGES_TYPE_CAMERASTATUS, |
| 1270 » PTP_CANON_EOS_CHANGES_TYPE_FOCUSINFO, |
| 1271 » PTP_CANON_EOS_CHANGES_TYPE_FOCUSMASK, |
| 1272 » PTP_CANON_EOS_CHANGES_TYPE_OBJECTREMOVED |
| 1273 }; |
1132 | 1274 |
1133 struct _PTPCanon_New_Object { | 1275 struct _PTPCanon_New_Object { |
1134 uint32_t oid; | 1276 uint32_t oid; |
1135 PTPObjectInfo oi; | 1277 PTPObjectInfo oi; |
1136 }; | 1278 }; |
1137 | 1279 |
1138 struct _PTPCanon_changes_entry { | 1280 struct _PTPCanon_changes_entry { |
1139 » int» type; | 1281 » enum _PTPCanon_changes_types» type; |
1140 union { | 1282 union { |
1141 struct _PTPCanon_New_Object object; /* TYPE_OBJECTINFO */ | 1283 struct _PTPCanon_New_Object object; /* TYPE_OBJECTINFO */ |
1142 char *info; | 1284 char *info; |
1143 uint16_t propid; | 1285 uint16_t propid; |
1144 int status; | 1286 int status; |
1145 } u; | 1287 } u; |
1146 }; | 1288 }; |
1147 typedef struct _PTPCanon_changes_entry PTPCanon_changes_entry; | 1289 typedef struct _PTPCanon_changes_entry PTPCanon_changes_entry; |
1148 | 1290 |
1149 typedef struct _PTPCanon_Property { | 1291 typedef struct _PTPCanon_Property { |
1150 uint32_t size; | 1292 uint32_t size; |
1151 uint32_t type; | |
1152 uint32_t proptype; | 1293 uint32_t proptype; |
1153 unsigned char *data; | 1294 unsigned char *data; |
1154 | 1295 |
1155 /* fill out for queries */ | 1296 /* fill out for queries */ |
1156 PTPDevicePropDesc dpd; | 1297 PTPDevicePropDesc dpd; |
1157 } PTPCanon_Property; | 1298 } PTPCanon_Property; |
1158 | 1299 |
1159 typedef struct _PTPCanonEOSDeviceInfo { | 1300 typedef struct _PTPCanonEOSDeviceInfo { |
1160 /* length */ | 1301 /* length */ |
1161 uint32_t EventsSupported_len; | 1302 uint32_t EventsSupported_len; |
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1346 #define PTP_DPC_CANON_AverageFilesizes 0xD048 | 1487 #define PTP_DPC_CANON_AverageFilesizes 0xD048 |
1347 #define PTP_DPC_CANON_ModelID 0xD049 | 1488 #define PTP_DPC_CANON_ModelID 0xD049 |
1348 | 1489 |
1349 /* From EOS 400D trace. */ | 1490 /* From EOS 400D trace. */ |
1350 #define PTP_DPC_CANON_EOS_Aperture 0xD101 | 1491 #define PTP_DPC_CANON_EOS_Aperture 0xD101 |
1351 #define PTP_DPC_CANON_EOS_ShutterSpeed 0xD102 | 1492 #define PTP_DPC_CANON_EOS_ShutterSpeed 0xD102 |
1352 #define PTP_DPC_CANON_EOS_ISOSpeed 0xD103 | 1493 #define PTP_DPC_CANON_EOS_ISOSpeed 0xD103 |
1353 #define PTP_DPC_CANON_EOS_ExpCompensation 0xD104 | 1494 #define PTP_DPC_CANON_EOS_ExpCompensation 0xD104 |
1354 #define PTP_DPC_CANON_EOS_AutoExposureMode 0xD105 | 1495 #define PTP_DPC_CANON_EOS_AutoExposureMode 0xD105 |
1355 #define PTP_DPC_CANON_EOS_DriveMode 0xD106 | 1496 #define PTP_DPC_CANON_EOS_DriveMode 0xD106 |
1356 #define PTP_DPC_CANON_EOS_MeteringMode» » 0xD107 | 1497 #define PTP_DPC_CANON_EOS_MeteringMode» » 0xD107 |
1357 #define PTP_DPC_CANON_EOS_FocusMode 0xD108 | 1498 #define PTP_DPC_CANON_EOS_FocusMode 0xD108 |
1358 #define PTP_DPC_CANON_EOS_WhiteBalance 0xD109 | 1499 #define PTP_DPC_CANON_EOS_WhiteBalance 0xD109 |
1359 #define PTP_DPC_CANON_EOS_ColorTemperature 0xD10A | 1500 #define PTP_DPC_CANON_EOS_ColorTemperature 0xD10A |
1360 #define PTP_DPC_CANON_EOS_WhiteBalanceAdjustA 0xD10B | 1501 #define PTP_DPC_CANON_EOS_WhiteBalanceAdjustA 0xD10B |
1361 #define PTP_DPC_CANON_EOS_WhiteBalanceAdjustB 0xD10C | 1502 #define PTP_DPC_CANON_EOS_WhiteBalanceAdjustB 0xD10C |
1362 #define PTP_DPC_CANON_EOS_WhiteBalanceXA 0xD10D | 1503 #define PTP_DPC_CANON_EOS_WhiteBalanceXA 0xD10D |
1363 #define PTP_DPC_CANON_EOS_WhiteBalanceXB 0xD10E | 1504 #define PTP_DPC_CANON_EOS_WhiteBalanceXB 0xD10E |
1364 #define PTP_DPC_CANON_EOS_ColorSpace 0xD10F | 1505 #define PTP_DPC_CANON_EOS_ColorSpace 0xD10F |
1365 #define PTP_DPC_CANON_EOS_PictureStyle 0xD110 | 1506 #define PTP_DPC_CANON_EOS_PictureStyle 0xD110 |
1366 #define PTP_DPC_CANON_EOS_BatteryPower 0xD111 | 1507 #define PTP_DPC_CANON_EOS_BatteryPower 0xD111 |
1367 #define PTP_DPC_CANON_EOS_BatterySelect 0xD112 | 1508 #define PTP_DPC_CANON_EOS_BatterySelect 0xD112 |
1368 #define PTP_DPC_CANON_EOS_CameraTime 0xD113 | 1509 #define PTP_DPC_CANON_EOS_CameraTime 0xD113 |
| 1510 #define PTP_DPC_CANON_EOS_AutoPowerOff 0xD114 |
1369 #define PTP_DPC_CANON_EOS_Owner 0xD115 | 1511 #define PTP_DPC_CANON_EOS_Owner 0xD115 |
1370 #define PTP_DPC_CANON_EOS_ModelID 0xD116 | 1512 #define PTP_DPC_CANON_EOS_ModelID 0xD116 |
1371 #define PTP_DPC_CANON_EOS_PTPExtensionVersion 0xD119 | 1513 #define PTP_DPC_CANON_EOS_PTPExtensionVersion 0xD119 |
1372 #define PTP_DPC_CANON_EOS_DPOFVersion 0xD11A | 1514 #define PTP_DPC_CANON_EOS_DPOFVersion 0xD11A |
1373 #define PTP_DPC_CANON_EOS_AvailableShots 0xD11B | 1515 #define PTP_DPC_CANON_EOS_AvailableShots 0xD11B |
1374 #define PTP_CANON_EOS_CAPTUREDEST_HD 4 | 1516 #define PTP_CANON_EOS_CAPTUREDEST_HD 4 |
1375 #define PTP_DPC_CANON_EOS_CaptureDestination 0xD11C | 1517 #define PTP_DPC_CANON_EOS_CaptureDestination 0xD11C |
1376 #define PTP_DPC_CANON_EOS_BracketMode 0xD11D | 1518 #define PTP_DPC_CANON_EOS_BracketMode 0xD11D |
1377 #define PTP_DPC_CANON_EOS_CurrentStorage 0xD11E | 1519 #define PTP_DPC_CANON_EOS_CurrentStorage 0xD11E |
1378 #define PTP_DPC_CANON_EOS_CurrentFolder 0xD11F | 1520 #define PTP_DPC_CANON_EOS_CurrentFolder 0xD11F |
1379 #define PTP_DPC_CANON_EOS_ImageFormat 0xD120 /* file setting */ | 1521 #define PTP_DPC_CANON_EOS_ImageFormat 0xD120 /* file setting */ |
1380 #define PTP_DPC_CANON_EOS_ImageFormatCF 0xD121 /* file setting CF */ | 1522 #define PTP_DPC_CANON_EOS_ImageFormatCF 0xD121 /* file setting CF */ |
1381 #define PTP_DPC_CANON_EOS_ImageFormatSD 0xD122 /* file setting SD */ | 1523 #define PTP_DPC_CANON_EOS_ImageFormatSD 0xD122 /* file setting SD */ |
1382 #define PTP_DPC_CANON_EOS_ImageFormatExtHD 0xD123 /* file setting exthd */ | 1524 #define PTP_DPC_CANON_EOS_ImageFormatExtHD 0xD123 /* file setting exthd */ |
1383 #define PTP_DPC_CANON_EOS_CompressionS 0xD130 | 1525 #define PTP_DPC_CANON_EOS_CompressionS 0xD130 |
1384 #define PTP_DPC_CANON_EOS_CompressionM1 0xD131 | 1526 #define PTP_DPC_CANON_EOS_CompressionM1 0xD131 |
1385 #define PTP_DPC_CANON_EOS_CompressionM2 0xD132 | 1527 #define PTP_DPC_CANON_EOS_CompressionM2 0xD132 |
1386 #define PTP_DPC_CANON_EOS_CompressionL 0xD133 | 1528 #define PTP_DPC_CANON_EOS_CompressionL 0xD133 |
| 1529 #define PTP_DPC_CANON_EOS_AEModeDial 0xD138 |
| 1530 #define PTP_DPC_CANON_EOS_AEModeCustom 0xD139 |
| 1531 #define PTP_DPC_CANON_EOS_MirrorUpSetting 0xD13A |
| 1532 #define PTP_DPC_CANON_EOS_HighlightTonePriority 0xD13B |
| 1533 #define PTP_DPC_CANON_EOS_AFSelectFocusArea 0xD13C |
| 1534 #define PTP_DPC_CANON_EOS_HDRSetting 0xD13D |
1387 #define PTP_DPC_CANON_EOS_PCWhiteBalance1 0xD140 | 1535 #define PTP_DPC_CANON_EOS_PCWhiteBalance1 0xD140 |
1388 #define PTP_DPC_CANON_EOS_PCWhiteBalance2 0xD141 | 1536 #define PTP_DPC_CANON_EOS_PCWhiteBalance2 0xD141 |
1389 #define PTP_DPC_CANON_EOS_PCWhiteBalance3 0xD142 | 1537 #define PTP_DPC_CANON_EOS_PCWhiteBalance3 0xD142 |
1390 #define PTP_DPC_CANON_EOS_PCWhiteBalance4 0xD143 | 1538 #define PTP_DPC_CANON_EOS_PCWhiteBalance4 0xD143 |
1391 #define PTP_DPC_CANON_EOS_PCWhiteBalance5 0xD144 | 1539 #define PTP_DPC_CANON_EOS_PCWhiteBalance5 0xD144 |
1392 #define PTP_DPC_CANON_EOS_MWhiteBalance 0xD145 | 1540 #define PTP_DPC_CANON_EOS_MWhiteBalance 0xD145 |
| 1541 #define PTP_DPC_CANON_EOS_MWhiteBalanceEx 0xD146 |
| 1542 #define PTP_DPC_CANON_EOS_UnknownPropD14D 0xD14D /*found in Canon EOS 5D
M3*/ |
1393 #define PTP_DPC_CANON_EOS_PictureStyleStandard 0xD150 | 1543 #define PTP_DPC_CANON_EOS_PictureStyleStandard 0xD150 |
1394 #define PTP_DPC_CANON_EOS_PictureStylePortrait 0xD151 | 1544 #define PTP_DPC_CANON_EOS_PictureStylePortrait 0xD151 |
1395 #define PTP_DPC_CANON_EOS_PictureStyleLandscape 0xD152 | 1545 #define PTP_DPC_CANON_EOS_PictureStyleLandscape 0xD152 |
1396 #define PTP_DPC_CANON_EOS_PictureStyleNeutral 0xD153 | 1546 #define PTP_DPC_CANON_EOS_PictureStyleNeutral 0xD153 |
1397 #define PTP_DPC_CANON_EOS_PictureStyleFaithful 0xD154 | 1547 #define PTP_DPC_CANON_EOS_PictureStyleFaithful 0xD154 |
1398 #define PTP_DPC_CANON_EOS_PictureStyleBlackWhite 0xD155 | 1548 #define PTP_DPC_CANON_EOS_PictureStyleBlackWhite 0xD155 |
| 1549 #define PTP_DPC_CANON_EOS_PictureStyleAuto 0xD156 |
1399 #define PTP_DPC_CANON_EOS_PictureStyleUserSet1 0xD160 | 1550 #define PTP_DPC_CANON_EOS_PictureStyleUserSet1 0xD160 |
1400 #define PTP_DPC_CANON_EOS_PictureStyleUserSet2 0xD161 | 1551 #define PTP_DPC_CANON_EOS_PictureStyleUserSet2 0xD161 |
1401 #define PTP_DPC_CANON_EOS_PictureStyleUserSet3 0xD162 | 1552 #define PTP_DPC_CANON_EOS_PictureStyleUserSet3 0xD162 |
1402 #define PTP_DPC_CANON_EOS_PictureStyleParam1 0xD170 | 1553 #define PTP_DPC_CANON_EOS_PictureStyleParam1 0xD170 |
1403 #define PTP_DPC_CANON_EOS_PictureStyleParam2 0xD171 | 1554 #define PTP_DPC_CANON_EOS_PictureStyleParam2 0xD171 |
1404 #define PTP_DPC_CANON_EOS_PictureStyleParam3 0xD172 | 1555 #define PTP_DPC_CANON_EOS_PictureStyleParam3 0xD172 |
1405 #define PTP_DPC_CANON_EOS_FlavorLUTParams» 0xD17f | 1556 #define PTP_DPC_CANON_EOS_HighISOSettingNoiseReduction» 0xD178 |
| 1557 #define PTP_DPC_CANON_EOS_MovieServoAF» » 0xD179 |
| 1558 #define PTP_DPC_CANON_EOS_ContinuousAFValid» 0xD17A |
| 1559 #define PTP_DPC_CANON_EOS_Attenuator» » 0xD17B |
| 1560 #define PTP_DPC_CANON_EOS_UTCTime» » 0xD17C |
| 1561 #define PTP_DPC_CANON_EOS_Timezone» » 0xD17D |
| 1562 #define PTP_DPC_CANON_EOS_Summertime» » 0xD17E |
| 1563 #define PTP_DPC_CANON_EOS_FlavorLUTParams» 0xD17F |
1406 #define PTP_DPC_CANON_EOS_CustomFunc1 0xD180 | 1564 #define PTP_DPC_CANON_EOS_CustomFunc1 0xD180 |
1407 #define PTP_DPC_CANON_EOS_CustomFunc2 0xD181 | 1565 #define PTP_DPC_CANON_EOS_CustomFunc2 0xD181 |
1408 #define PTP_DPC_CANON_EOS_CustomFunc3 0xD182 | 1566 #define PTP_DPC_CANON_EOS_CustomFunc3 0xD182 |
1409 #define PTP_DPC_CANON_EOS_CustomFunc4 0xD183 | 1567 #define PTP_DPC_CANON_EOS_CustomFunc4 0xD183 |
1410 #define PTP_DPC_CANON_EOS_CustomFunc5 0xD184 | 1568 #define PTP_DPC_CANON_EOS_CustomFunc5 0xD184 |
1411 #define PTP_DPC_CANON_EOS_CustomFunc6 0xD185 | 1569 #define PTP_DPC_CANON_EOS_CustomFunc6 0xD185 |
1412 #define PTP_DPC_CANON_EOS_CustomFunc7 0xD186 | 1570 #define PTP_DPC_CANON_EOS_CustomFunc7 0xD186 |
1413 #define PTP_DPC_CANON_EOS_CustomFunc8 0xD187 | 1571 #define PTP_DPC_CANON_EOS_CustomFunc8 0xD187 |
1414 #define PTP_DPC_CANON_EOS_CustomFunc9 0xD188 | 1572 #define PTP_DPC_CANON_EOS_CustomFunc9 0xD188 |
1415 #define PTP_DPC_CANON_EOS_CustomFunc10 0xD189 | 1573 #define PTP_DPC_CANON_EOS_CustomFunc10 0xD189 |
1416 #define PTP_DPC_CANON_EOS_CustomFunc11 0xD18a | 1574 #define PTP_DPC_CANON_EOS_CustomFunc11 0xD18a |
1417 #define PTP_DPC_CANON_EOS_CustomFunc12 0xD18b | 1575 #define PTP_DPC_CANON_EOS_CustomFunc12 0xD18b |
1418 #define PTP_DPC_CANON_EOS_CustomFunc13 0xD18c | 1576 #define PTP_DPC_CANON_EOS_CustomFunc13 0xD18c |
1419 #define PTP_DPC_CANON_EOS_CustomFunc14 0xD18d | 1577 #define PTP_DPC_CANON_EOS_CustomFunc14 0xD18d |
1420 #define PTP_DPC_CANON_EOS_CustomFunc15 0xD18e | 1578 #define PTP_DPC_CANON_EOS_CustomFunc15 0xD18e |
1421 #define PTP_DPC_CANON_EOS_CustomFunc16 0xD18f | 1579 #define PTP_DPC_CANON_EOS_CustomFunc16 0xD18f |
1422 #define PTP_DPC_CANON_EOS_CustomFunc17 0xD190 | 1580 #define PTP_DPC_CANON_EOS_CustomFunc17 0xD190 |
1423 #define PTP_DPC_CANON_EOS_CustomFunc18 0xD191 | 1581 #define PTP_DPC_CANON_EOS_CustomFunc18 0xD191 |
1424 #define PTP_DPC_CANON_EOS_CustomFunc19 0xD192 | 1582 #define PTP_DPC_CANON_EOS_CustomFunc19 0xD192 |
1425 #define PTP_DPC_CANON_EOS_CustomFunc19 0xD192 | 1583 #define PTP_DPC_CANON_EOS_CustomFunc19 0xD192 |
| 1584 #define PTP_DPC_CANON_EOS_InnerDevelop 0xD193 |
| 1585 #define PTP_DPC_CANON_EOS_MultiAspect 0xD194 |
| 1586 #define PTP_DPC_CANON_EOS_MovieSoundRecord 0xD195 |
| 1587 #define PTP_DPC_CANON_EOS_MovieRecordVolume 0xD196 |
| 1588 #define PTP_DPC_CANON_EOS_WindCut 0xD197 |
| 1589 #define PTP_DPC_CANON_EOS_ExtenderType 0xD198 |
| 1590 #define PTP_DPC_CANON_EOS_OLCInfoVersion 0xD199 |
| 1591 #define PTP_DPC_CANON_EOS_UnknownPropD19A 0xD19A /*found in Canon EOS 5D M
3*/ |
| 1592 #define PTP_DPC_CANON_EOS_UnknownPropD19C 0xD19C /*found in Canon EOS 5D M
3*/ |
| 1593 #define PTP_DPC_CANON_EOS_UnknownPropD19D 0xD19D /*found in Canon EOS 5D M
3*/ |
1426 #define PTP_DPC_CANON_EOS_CustomFuncEx 0xD1a0 | 1594 #define PTP_DPC_CANON_EOS_CustomFuncEx 0xD1a0 |
1427 #define PTP_DPC_CANON_EOS_MyMenu 0xD1a1 | 1595 #define PTP_DPC_CANON_EOS_MyMenu 0xD1a1 |
1428 #define PTP_DPC_CANON_EOS_MyMenuList 0xD1a2 | 1596 #define PTP_DPC_CANON_EOS_MyMenuList 0xD1a2 |
1429 #define PTP_DPC_CANON_EOS_WftStatus 0xD1a3 | 1597 #define PTP_DPC_CANON_EOS_WftStatus 0xD1a3 |
1430 #define PTP_DPC_CANON_EOS_WftInputTransmission 0xD1a4 | 1598 #define PTP_DPC_CANON_EOS_WftInputTransmission 0xD1a4 |
1431 #define PTP_DPC_CANON_EOS_HDDirectoryStructure 0xD1a5 | 1599 #define PTP_DPC_CANON_EOS_HDDirectoryStructure 0xD1a5 |
1432 #define PTP_DPC_CANON_EOS_BatteryInfo 0xD1a6 | 1600 #define PTP_DPC_CANON_EOS_BatteryInfo 0xD1a6 |
1433 #define PTP_DPC_CANON_EOS_AdapterInfo 0xD1a7 | 1601 #define PTP_DPC_CANON_EOS_AdapterInfo 0xD1a7 |
1434 #define PTP_DPC_CANON_EOS_LensStatus 0xD1a8 | 1602 #define PTP_DPC_CANON_EOS_LensStatus 0xD1a8 |
1435 #define PTP_DPC_CANON_EOS_QuickReviewTime 0xD1a9 | 1603 #define PTP_DPC_CANON_EOS_QuickReviewTime 0xD1a9 |
1436 #define PTP_DPC_CANON_EOS_CardExtension 0xD1aa | 1604 #define PTP_DPC_CANON_EOS_CardExtension 0xD1aa |
1437 #define PTP_DPC_CANON_EOS_TempStatus 0xD1ab | 1605 #define PTP_DPC_CANON_EOS_TempStatus 0xD1ab |
1438 #define PTP_DPC_CANON_EOS_ShutterCounter 0xD1ac | 1606 #define PTP_DPC_CANON_EOS_ShutterCounter 0xD1ac |
1439 #define PTP_DPC_CANON_EOS_SpecialOption 0xD1ad | 1607 #define PTP_DPC_CANON_EOS_SpecialOption 0xD1ad |
1440 #define PTP_DPC_CANON_EOS_PhotoStudioMode 0xD1ae | 1608 #define PTP_DPC_CANON_EOS_PhotoStudioMode 0xD1ae |
1441 #define PTP_DPC_CANON_EOS_SerialNumber 0xD1af | 1609 #define PTP_DPC_CANON_EOS_SerialNumber 0xD1af |
1442 #define PTP_DPC_CANON_EOS_EVFOutputDevice 0xD1b0 | 1610 #define PTP_DPC_CANON_EOS_EVFOutputDevice 0xD1b0 |
1443 #define PTP_DPC_CANON_EOS_EVFMode 0xD1b1 | 1611 #define PTP_DPC_CANON_EOS_EVFMode 0xD1b1 |
1444 #define PTP_DPC_CANON_EOS_DepthOfFieldPreview 0xD1b2 | 1612 #define PTP_DPC_CANON_EOS_DepthOfFieldPreview 0xD1b2 |
1445 #define PTP_DPC_CANON_EOS_EVFSharpness 0xD1b3 | 1613 #define PTP_DPC_CANON_EOS_EVFSharpness 0xD1b3 |
1446 #define PTP_DPC_CANON_EOS_EVFWBMode 0xD1b4 | 1614 #define PTP_DPC_CANON_EOS_EVFWBMode 0xD1b4 |
1447 #define PTP_DPC_CANON_EOS_EVFClickWBCoeffs 0xD1b5 | 1615 #define PTP_DPC_CANON_EOS_EVFClickWBCoeffs 0xD1b5 |
1448 #define PTP_DPC_CANON_EOS_EVFColorTemp 0xD1b6 | 1616 #define PTP_DPC_CANON_EOS_EVFColorTemp 0xD1b6 |
1449 #define PTP_DPC_CANON_EOS_ExposureSimMode 0xD1b7 | 1617 #define PTP_DPC_CANON_EOS_ExposureSimMode 0xD1b7 |
1450 #define PTP_DPC_CANON_EOS_EVFRecordStatus 0xD1b8 | 1618 #define PTP_DPC_CANON_EOS_EVFRecordStatus 0xD1b8 |
1451 #define PTP_DPC_CANON_EOS_LvAfSystem 0xD1ba | 1619 #define PTP_DPC_CANON_EOS_LvAfSystem 0xD1ba |
1452 #define PTP_DPC_CANON_EOS_MovSize 0xD1bb | 1620 #define PTP_DPC_CANON_EOS_MovSize 0xD1bb |
1453 #define PTP_DPC_CANON_EOS_LvViewTypeSelect 0xD1bc | 1621 #define PTP_DPC_CANON_EOS_LvViewTypeSelect 0xD1bc |
| 1622 #define PTP_DPC_CANON_EOS_MirrorDownStatus 0xD1bd |
| 1623 #define PTP_DPC_CANON_EOS_MovieParam 0xD1be |
| 1624 #define PTP_DPC_CANON_EOS_MirrorLockupState 0xD1bf |
| 1625 #define PTP_DPC_CANON_EOS_FlashChargingState 0xD1C0 |
| 1626 #define PTP_DPC_CANON_EOS_AloMode 0xD1C1 |
| 1627 #define PTP_DPC_CANON_EOS_FixedMovie 0xD1C2 |
| 1628 #define PTP_DPC_CANON_EOS_OneShotRawOn 0xD1C3 |
| 1629 #define PTP_DPC_CANON_EOS_ErrorForDisplay 0xD1C4 |
| 1630 #define PTP_DPC_CANON_EOS_AEModeMovie 0xD1C5 |
| 1631 #define PTP_DPC_CANON_EOS_BuiltinStroboMode 0xD1C6 |
| 1632 #define PTP_DPC_CANON_EOS_StroboDispState 0xD1C7 |
| 1633 #define PTP_DPC_CANON_EOS_StroboETTL2Metering 0xD1C8 |
| 1634 #define PTP_DPC_CANON_EOS_ContinousAFMode 0xD1C9 |
| 1635 #define PTP_DPC_CANON_EOS_MovieParam2 0xD1CA |
| 1636 #define PTP_DPC_CANON_EOS_StroboSettingExpComposition 0xD1CB |
| 1637 #define PTP_DPC_CANON_EOS_MovieParam3 0xD1CC |
| 1638 #define PTP_DPC_CANON_EOS_LVMedicalRotate 0xD1CF |
1454 #define PTP_DPC_CANON_EOS_Artist 0xD1d0 | 1639 #define PTP_DPC_CANON_EOS_Artist 0xD1d0 |
1455 #define PTP_DPC_CANON_EOS_Copyright 0xD1d1 | 1640 #define PTP_DPC_CANON_EOS_Copyright 0xD1d1 |
1456 #define PTP_DPC_CANON_EOS_BracketValue 0xD1d2 | 1641 #define PTP_DPC_CANON_EOS_BracketValue 0xD1d2 |
1457 #define PTP_DPC_CANON_EOS_FocusInfoEx 0xD1d3 | 1642 #define PTP_DPC_CANON_EOS_FocusInfoEx 0xD1d3 |
1458 #define PTP_DPC_CANON_EOS_DepthOfField 0xD1d4 | 1643 #define PTP_DPC_CANON_EOS_DepthOfField 0xD1d4 |
1459 #define PTP_DPC_CANON_EOS_Brightness 0xD1d5 | 1644 #define PTP_DPC_CANON_EOS_Brightness 0xD1d5 |
1460 #define PTP_DPC_CANON_EOS_LensAdjustParams 0xD1d6 | 1645 #define PTP_DPC_CANON_EOS_LensAdjustParams 0xD1d6 |
1461 #define PTP_DPC_CANON_EOS_EFComp 0xD1d7 | 1646 #define PTP_DPC_CANON_EOS_EFComp 0xD1d7 |
1462 #define PTP_DPC_CANON_EOS_LensName 0xD1d8 | 1647 #define PTP_DPC_CANON_EOS_LensName 0xD1d8 |
1463 #define PTP_DPC_CANON_EOS_AEB 0xD1d9 | 1648 #define PTP_DPC_CANON_EOS_AEB 0xD1d9 |
1464 #define PTP_DPC_CANON_EOS_StroboSetting 0xD1da | 1649 #define PTP_DPC_CANON_EOS_StroboSetting 0xD1da |
1465 #define PTP_DPC_CANON_EOS_StroboWirelessSetting 0xD1db | 1650 #define PTP_DPC_CANON_EOS_StroboWirelessSetting 0xD1db |
1466 #define PTP_DPC_CANON_EOS_StroboFiring 0xD1dc | 1651 #define PTP_DPC_CANON_EOS_StroboFiring 0xD1dc |
1467 #define PTP_DPC_CANON_EOS_LensID 0xD1dd | 1652 #define PTP_DPC_CANON_EOS_LensID 0xD1dd |
| 1653 #define PTP_DPC_CANON_EOS_LCDBrightness 0xD1de |
| 1654 #define PTP_DPC_CANON_EOS_CADarkBright 0xD1df |
1468 | 1655 |
1469 /* Nikon extension device property codes */ | 1656 /* Nikon extension device property codes */ |
1470 #define PTP_DPC_NIKON_ShootingBank 0xD010 | 1657 #define PTP_DPC_NIKON_ShootingBank 0xD010 |
1471 #define PTP_DPC_NIKON_ShootingBankNameA 0xD011 | 1658 #define PTP_DPC_NIKON_ShootingBankNameA 0xD011 |
1472 #define PTP_DPC_NIKON_ShootingBankNameB 0xD012 | 1659 #define PTP_DPC_NIKON_ShootingBankNameB 0xD012 |
1473 #define PTP_DPC_NIKON_ShootingBankNameC 0xD013 | 1660 #define PTP_DPC_NIKON_ShootingBankNameC 0xD013 |
1474 #define PTP_DPC_NIKON_ShootingBankNameD 0xD014 | 1661 #define PTP_DPC_NIKON_ShootingBankNameD 0xD014 |
1475 #define PTP_DPC_NIKON_ResetBank0 0xD015 | 1662 #define PTP_DPC_NIKON_ResetBank0 0xD015 |
1476 #define PTP_DPC_NIKON_RawCompression 0xD016 | 1663 #define PTP_DPC_NIKON_RawCompression 0xD016 |
1477 #define PTP_DPC_NIKON_WhiteBalanceAutoBias 0xD017 | 1664 #define PTP_DPC_NIKON_WhiteBalanceAutoBias 0xD017 |
(...skipping 18 matching lines...) Expand all Loading... |
1496 #define PTP_DPC_NIKON_ImageSharpening 0xD02A | 1683 #define PTP_DPC_NIKON_ImageSharpening 0xD02A |
1497 #define PTP_DPC_NIKON_ToneCompensation 0xD02B | 1684 #define PTP_DPC_NIKON_ToneCompensation 0xD02B |
1498 #define PTP_DPC_NIKON_ColorModel 0xD02C | 1685 #define PTP_DPC_NIKON_ColorModel 0xD02C |
1499 #define PTP_DPC_NIKON_HueAdjustment 0xD02D | 1686 #define PTP_DPC_NIKON_HueAdjustment 0xD02D |
1500 #define PTP_DPC_NIKON_NonCPULensDataFocalLength 0xD02E /* Set FMM Manua
l */ | 1687 #define PTP_DPC_NIKON_NonCPULensDataFocalLength 0xD02E /* Set FMM Manua
l */ |
1501 #define PTP_DPC_NIKON_NonCPULensDataMaximumAperture 0xD02F /* Set F0 Manual
*/ | 1688 #define PTP_DPC_NIKON_NonCPULensDataMaximumAperture 0xD02F /* Set F0 Manual
*/ |
1502 #define PTP_DPC_NIKON_ShootingMode 0xD030 | 1689 #define PTP_DPC_NIKON_ShootingMode 0xD030 |
1503 #define PTP_DPC_NIKON_JPEG_Compression_Policy 0xD031 | 1690 #define PTP_DPC_NIKON_JPEG_Compression_Policy 0xD031 |
1504 #define PTP_DPC_NIKON_ColorSpace 0xD032 | 1691 #define PTP_DPC_NIKON_ColorSpace 0xD032 |
1505 #define PTP_DPC_NIKON_AutoDXCrop 0xD033 | 1692 #define PTP_DPC_NIKON_AutoDXCrop 0xD033 |
| 1693 #define PTP_DPC_NIKON_FlickerReduction 0xD034 |
| 1694 #define PTP_DPC_NIKON_RemoteMode 0xD035 |
1506 #define PTP_DPC_NIKON_VideoMode 0xD036 | 1695 #define PTP_DPC_NIKON_VideoMode 0xD036 |
1507 #define PTP_DPC_NIKON_EffectMode 0xD037 | 1696 #define PTP_DPC_NIKON_EffectMode 0xD037 |
| 1697 #define PTP_DPC_NIKON_1_Mode 0xD038 |
1508 #define PTP_DPC_NIKON_CSMMenuBankSelect 0xD040 | 1698 #define PTP_DPC_NIKON_CSMMenuBankSelect 0xD040 |
1509 #define PTP_DPC_NIKON_MenuBankNameA 0xD041 | 1699 #define PTP_DPC_NIKON_MenuBankNameA 0xD041 |
1510 #define PTP_DPC_NIKON_MenuBankNameB 0xD042 | 1700 #define PTP_DPC_NIKON_MenuBankNameB 0xD042 |
1511 #define PTP_DPC_NIKON_MenuBankNameC 0xD043 | 1701 #define PTP_DPC_NIKON_MenuBankNameC 0xD043 |
1512 #define PTP_DPC_NIKON_MenuBankNameD 0xD044 | 1702 #define PTP_DPC_NIKON_MenuBankNameD 0xD044 |
1513 #define PTP_DPC_NIKON_ResetBank 0xD045 | 1703 #define PTP_DPC_NIKON_ResetBank 0xD045 |
1514 #define PTP_DPC_NIKON_A1AFCModePriority 0xD048 | 1704 #define PTP_DPC_NIKON_A1AFCModePriority 0xD048 |
1515 #define PTP_DPC_NIKON_A2AFSModePriority 0xD049 | 1705 #define PTP_DPC_NIKON_A2AFSModePriority 0xD049 |
1516 #define PTP_DPC_NIKON_A3GroupDynamicAF 0xD04A | 1706 #define PTP_DPC_NIKON_A3GroupDynamicAF 0xD04A |
1517 #define PTP_DPC_NIKON_A4AFActivation 0xD04B | 1707 #define PTP_DPC_NIKON_A4AFActivation 0xD04B |
1518 #define PTP_DPC_NIKON_FocusAreaIllumManualFocus 0xD04C | 1708 #define PTP_DPC_NIKON_FocusAreaIllumManualFocus 0xD04C |
1519 #define PTP_DPC_NIKON_FocusAreaIllumContinuous 0xD04D | 1709 #define PTP_DPC_NIKON_FocusAreaIllumContinuous 0xD04D |
1520 #define PTP_DPC_NIKON_FocusAreaIllumWhenSelected 0xD04E | 1710 #define PTP_DPC_NIKON_FocusAreaIllumWhenSelected 0xD04E |
1521 #define PTP_DPC_NIKON_FocusAreaWrap 0xD04F /* area sel */ | 1711 #define PTP_DPC_NIKON_FocusAreaWrap 0xD04F /* area sel */ |
1522 #define PTP_DPC_NIKON_VerticalAFON 0xD050 | 1712 #define PTP_DPC_NIKON_VerticalAFON 0xD050 |
1523 #define PTP_DPC_NIKON_AFLockOn 0xD051 | 1713 #define PTP_DPC_NIKON_AFLockOn 0xD051 |
1524 #define PTP_DPC_NIKON_FocusAreaZone 0xD052 | 1714 #define PTP_DPC_NIKON_FocusAreaZone 0xD052 |
1525 #define PTP_DPC_NIKON_EnableCopyright 0xD053 | 1715 #define PTP_DPC_NIKON_EnableCopyright 0xD053 |
1526 #define PTP_DPC_NIKON_ISOAuto 0xD054 | 1716 #define PTP_DPC_NIKON_ISOAuto 0xD054 |
1527 #define PTP_DPC_NIKON_EVISOStep 0xD055 | 1717 #define PTP_DPC_NIKON_EVISOStep 0xD055 |
1528 #define PTP_DPC_NIKON_EVStep 0xD056 /* EV Step SS FN
*/ | 1718 #define PTP_DPC_NIKON_EVStep 0xD056 /* EV Step SS FN
*/ |
1529 #define PTP_DPC_NIKON_EVStepExposureComp 0xD057 | 1719 #define PTP_DPC_NIKON_EVStepExposureComp 0xD057 |
1530 #define PTP_DPC_NIKON_ExposureCompensation 0xD058 | 1720 #define PTP_DPC_NIKON_ExposureCompensation 0xD058 |
1531 #define PTP_DPC_NIKON_CenterWeightArea 0xD059 | 1721 #define PTP_DPC_NIKON_CenterWeightArea 0xD059 |
1532 #define PTP_DPC_NIKON_ExposureBaseMatrix 0xD05A | 1722 #define PTP_DPC_NIKON_ExposureBaseMatrix 0xD05A |
1533 #define PTP_DPC_NIKON_ExposureBaseCenter 0xD05B | 1723 #define PTP_DPC_NIKON_ExposureBaseCenter 0xD05B |
1534 #define PTP_DPC_NIKON_ExposureBaseSpot 0xD05C | 1724 #define PTP_DPC_NIKON_ExposureBaseSpot 0xD05C |
1535 #define PTP_DPC_NIKON_LiveViewAFArea» » » 0xD05D | 1725 #define PTP_DPC_NIKON_LiveViewAFArea» » » 0xD05D /* FIXME: AfAtLiv
eview? */ |
1536 #define PTP_DPC_NIKON_AELockMode 0xD05E | 1726 #define PTP_DPC_NIKON_AELockMode 0xD05E |
1537 #define PTP_DPC_NIKON_AELAFLMode 0xD05F | 1727 #define PTP_DPC_NIKON_AELAFLMode 0xD05F |
1538 #define PTP_DPC_NIKON_LiveViewAFFocus 0xD061 | 1728 #define PTP_DPC_NIKON_LiveViewAFFocus 0xD061 |
1539 #define PTP_DPC_NIKON_MeterOff 0xD062 | 1729 #define PTP_DPC_NIKON_MeterOff 0xD062 |
1540 #define PTP_DPC_NIKON_SelfTimer 0xD063 | 1730 #define PTP_DPC_NIKON_SelfTimer 0xD063 |
1541 #define PTP_DPC_NIKON_MonitorOff 0xD064 | 1731 #define PTP_DPC_NIKON_MonitorOff 0xD064 |
1542 #define PTP_DPC_NIKON_ImgConfTime 0xD065 | 1732 #define PTP_DPC_NIKON_ImgConfTime 0xD065 |
1543 #define PTP_DPC_NIKON_AutoOffTimers 0xD066 | 1733 #define PTP_DPC_NIKON_AutoOffTimers 0xD066 |
1544 #define PTP_DPC_NIKON_AngleLevel 0xD067 | 1734 #define PTP_DPC_NIKON_AngleLevel 0xD067 |
1545 #define PTP_DPC_NIKON_D1ShootingSpeed 0xD068 /* continous spee
d low */ | 1735 #define PTP_DPC_NIKON_D1ShootingSpeed 0xD068 /* continous spee
d low */ |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1579 #define PTP_DPC_NIKON_AFAreaPoint 0xD08D | 1769 #define PTP_DPC_NIKON_AFAreaPoint 0xD08D |
1580 #define PTP_DPC_NIKON_NormalAFOn 0xD08E | 1770 #define PTP_DPC_NIKON_NormalAFOn 0xD08E |
1581 #define PTP_DPC_NIKON_CleanImageSensor 0xD08F | 1771 #define PTP_DPC_NIKON_CleanImageSensor 0xD08F |
1582 #define PTP_DPC_NIKON_ImageCommentString 0xD090 | 1772 #define PTP_DPC_NIKON_ImageCommentString 0xD090 |
1583 #define PTP_DPC_NIKON_ImageCommentEnable 0xD091 | 1773 #define PTP_DPC_NIKON_ImageCommentEnable 0xD091 |
1584 #define PTP_DPC_NIKON_ImageRotation 0xD092 | 1774 #define PTP_DPC_NIKON_ImageRotation 0xD092 |
1585 #define PTP_DPC_NIKON_ManualSetLensNo 0xD093 | 1775 #define PTP_DPC_NIKON_ManualSetLensNo 0xD093 |
1586 #define PTP_DPC_NIKON_MovScreenSize 0xD0A0 | 1776 #define PTP_DPC_NIKON_MovScreenSize 0xD0A0 |
1587 #define PTP_DPC_NIKON_MovVoice 0xD0A1 | 1777 #define PTP_DPC_NIKON_MovVoice 0xD0A1 |
1588 #define PTP_DPC_NIKON_MovMicrophone 0xD0A2 | 1778 #define PTP_DPC_NIKON_MovMicrophone 0xD0A2 |
| 1779 #define PTP_DPC_NIKON_MovFileSlot 0xD0A3 |
| 1780 #define PTP_DPC_NIKON_MovRecProhibitCondition 0xD0A4 |
| 1781 #define PTP_DPC_NIKON_ManualMovieSetting 0xD0A6 |
| 1782 #define PTP_DPC_NIKON_MovQuality 0xD0A7 |
| 1783 #define PTP_DPC_NIKON_LiveViewScreenDisplaySetting 0xD0B2 |
| 1784 #define PTP_DPC_NIKON_MonitorOffDelay 0xD0B3 |
1589 #define PTP_DPC_NIKON_Bracketing 0xD0C0 | 1785 #define PTP_DPC_NIKON_Bracketing 0xD0C0 |
1590 #define PTP_DPC_NIKON_AutoExposureBracketStep 0xD0C1 | 1786 #define PTP_DPC_NIKON_AutoExposureBracketStep 0xD0C1 |
1591 #define PTP_DPC_NIKON_AutoExposureBracketProgram 0xD0C2 | 1787 #define PTP_DPC_NIKON_AutoExposureBracketProgram 0xD0C2 |
1592 #define PTP_DPC_NIKON_AutoExposureBracketCount 0xD0C3 | 1788 #define PTP_DPC_NIKON_AutoExposureBracketCount 0xD0C3 |
1593 #define PTP_DPC_NIKON_WhiteBalanceBracketStep 0xD0C4 | 1789 #define PTP_DPC_NIKON_WhiteBalanceBracketStep 0xD0C4 |
1594 #define PTP_DPC_NIKON_WhiteBalanceBracketProgram 0xD0C5 | 1790 #define PTP_DPC_NIKON_WhiteBalanceBracketProgram 0xD0C5 |
1595 #define PTP_DPC_NIKON_LensID 0xD0E0 | 1791 #define PTP_DPC_NIKON_LensID 0xD0E0 |
1596 #define PTP_DPC_NIKON_LensSort 0xD0E1 | 1792 #define PTP_DPC_NIKON_LensSort 0xD0E1 |
1597 #define PTP_DPC_NIKON_LensType 0xD0E2 | 1793 #define PTP_DPC_NIKON_LensType 0xD0E2 |
1598 #define PTP_DPC_NIKON_FocalLengthMin 0xD0E3 | 1794 #define PTP_DPC_NIKON_FocalLengthMin 0xD0E3 |
1599 #define PTP_DPC_NIKON_FocalLengthMax 0xD0E4 | 1795 #define PTP_DPC_NIKON_FocalLengthMax 0xD0E4 |
1600 #define PTP_DPC_NIKON_MaxApAtMinFocalLength 0xD0E5 | 1796 #define PTP_DPC_NIKON_MaxApAtMinFocalLength 0xD0E5 |
1601 #define PTP_DPC_NIKON_MaxApAtMaxFocalLength 0xD0E6 | 1797 #define PTP_DPC_NIKON_MaxApAtMaxFocalLength 0xD0E6 |
1602 #define PTP_DPC_NIKON_FinderISODisp 0xD0F0 | 1798 #define PTP_DPC_NIKON_FinderISODisp 0xD0F0 |
1603 #define PTP_DPC_NIKON_AutoOffPhoto 0xD0F2 | 1799 #define PTP_DPC_NIKON_AutoOffPhoto 0xD0F2 |
1604 #define PTP_DPC_NIKON_AutoOffMenu 0xD0F3 | 1800 #define PTP_DPC_NIKON_AutoOffMenu 0xD0F3 |
1605 #define PTP_DPC_NIKON_AutoOffInfo 0xD0F4 | 1801 #define PTP_DPC_NIKON_AutoOffInfo 0xD0F4 |
1606 #define PTP_DPC_NIKON_SelfTimerShootNum 0xD0F5 | 1802 #define PTP_DPC_NIKON_SelfTimerShootNum 0xD0F5 |
1607 #define PTP_DPC_NIKON_VignetteCtrl 0xD0F7 | 1803 #define PTP_DPC_NIKON_VignetteCtrl 0xD0F7 |
1608 #define PTP_DPC_NIKON_AutoDistortionControl 0xD0F8 | 1804 #define PTP_DPC_NIKON_AutoDistortionControl 0xD0F8 |
1609 #define PTP_DPC_NIKON_SceneMode 0xD0F9 | 1805 #define PTP_DPC_NIKON_SceneMode 0xD0F9 |
| 1806 #define PTP_DPC_NIKON_SceneMode2 0xD0FD |
| 1807 #define PTP_DPC_NIKON_SelfTimerInterval 0xD0FE |
1610 #define PTP_DPC_NIKON_ExposureTime 0xD100 /* Shutter Speed
*/ | 1808 #define PTP_DPC_NIKON_ExposureTime 0xD100 /* Shutter Speed
*/ |
1611 #define PTP_DPC_NIKON_ACPower 0xD101 | 1809 #define PTP_DPC_NIKON_ACPower 0xD101 |
1612 #define PTP_DPC_NIKON_WarningStatus 0xD102 | 1810 #define PTP_DPC_NIKON_WarningStatus 0xD102 |
1613 #define PTP_DPC_NIKON_MaximumShots 0xD103 /* remain shots (
in RAM buffer?) */ | 1811 #define PTP_DPC_NIKON_MaximumShots 0xD103 /* remain shots (
in RAM buffer?) */ |
1614 #define PTP_DPC_NIKON_AFLockStatus 0xD104 | 1812 #define PTP_DPC_NIKON_AFLockStatus 0xD104 |
1615 #define PTP_DPC_NIKON_AELockStatus 0xD105 | 1813 #define PTP_DPC_NIKON_AELockStatus 0xD105 |
1616 #define PTP_DPC_NIKON_FVLockStatus 0xD106 | 1814 #define PTP_DPC_NIKON_FVLockStatus 0xD106 |
1617 #define PTP_DPC_NIKON_AutofocusLCDTopMode2 0xD107 | 1815 #define PTP_DPC_NIKON_AutofocusLCDTopMode2 0xD107 |
1618 #define PTP_DPC_NIKON_AutofocusArea 0xD108 | 1816 #define PTP_DPC_NIKON_AutofocusArea 0xD108 |
1619 #define PTP_DPC_NIKON_FlexibleProgram 0xD109 | 1817 #define PTP_DPC_NIKON_FlexibleProgram 0xD109 |
(...skipping 20 matching lines...) Expand all Loading... |
1640 #define PTP_DPC_NIKON_HDRHighDynamic 0xD131 | 1838 #define PTP_DPC_NIKON_HDRHighDynamic 0xD131 |
1641 #define PTP_DPC_NIKON_HDRSmoothing 0xD132 | 1839 #define PTP_DPC_NIKON_HDRSmoothing 0xD132 |
1642 #define PTP_DPC_NIKON_OptimizeImage 0xD140 | 1840 #define PTP_DPC_NIKON_OptimizeImage 0xD140 |
1643 #define PTP_DPC_NIKON_Saturation 0xD142 | 1841 #define PTP_DPC_NIKON_Saturation 0xD142 |
1644 #define PTP_DPC_NIKON_BW_FillerEffect 0xD143 | 1842 #define PTP_DPC_NIKON_BW_FillerEffect 0xD143 |
1645 #define PTP_DPC_NIKON_BW_Sharpness 0xD144 | 1843 #define PTP_DPC_NIKON_BW_Sharpness 0xD144 |
1646 #define PTP_DPC_NIKON_BW_Contrast 0xD145 | 1844 #define PTP_DPC_NIKON_BW_Contrast 0xD145 |
1647 #define PTP_DPC_NIKON_BW_Setting_Type 0xD146 | 1845 #define PTP_DPC_NIKON_BW_Setting_Type 0xD146 |
1648 #define PTP_DPC_NIKON_Slot2SaveMode 0xD148 | 1846 #define PTP_DPC_NIKON_Slot2SaveMode 0xD148 |
1649 #define PTP_DPC_NIKON_RawBitMode 0xD149 | 1847 #define PTP_DPC_NIKON_RawBitMode 0xD149 |
1650 #define PTP_DPC_NIKON_ISOAutoTime» » » 0xD14E | 1848 #define PTP_DPC_NIKON_ActiveDLighting» » » 0xD14E /* was PTP_DPC_NI
KON_ISOAutoTime */ |
1651 #define PTP_DPC_NIKON_FlourescentType 0xD14F | 1849 #define PTP_DPC_NIKON_FlourescentType 0xD14F |
1652 #define PTP_DPC_NIKON_TuneColourTemperature 0xD150 | 1850 #define PTP_DPC_NIKON_TuneColourTemperature 0xD150 |
1653 #define PTP_DPC_NIKON_TunePreset0 0xD151 | 1851 #define PTP_DPC_NIKON_TunePreset0 0xD151 |
1654 #define PTP_DPC_NIKON_TunePreset1 0xD152 | 1852 #define PTP_DPC_NIKON_TunePreset1 0xD152 |
1655 #define PTP_DPC_NIKON_TunePreset2 0xD153 | 1853 #define PTP_DPC_NIKON_TunePreset2 0xD153 |
1656 #define PTP_DPC_NIKON_TunePreset3 0xD154 | 1854 #define PTP_DPC_NIKON_TunePreset3 0xD154 |
1657 #define PTP_DPC_NIKON_TunePreset4 0xD155 | 1855 #define PTP_DPC_NIKON_TunePreset4 0xD155 |
1658 #define PTP_DPC_NIKON_BeepOff 0xD160 | 1856 #define PTP_DPC_NIKON_BeepOff 0xD160 |
1659 #define PTP_DPC_NIKON_AutofocusMode 0xD161 | 1857 #define PTP_DPC_NIKON_AutofocusMode 0xD161 |
1660 #define PTP_DPC_NIKON_AFAssist 0xD163 | 1858 #define PTP_DPC_NIKON_AFAssist 0xD163 |
1661 #define PTP_DPC_NIKON_PADVPMode 0xD164 /* iso auto time
*/ | 1859 #define PTP_DPC_NIKON_PADVPMode 0xD164 /* iso auto time
*/ |
1662 #define PTP_DPC_NIKON_ImageReview 0xD165 | 1860 #define PTP_DPC_NIKON_ImageReview 0xD165 |
1663 #define PTP_DPC_NIKON_AFAreaIllumination 0xD166 | 1861 #define PTP_DPC_NIKON_AFAreaIllumination 0xD166 |
1664 #define PTP_DPC_NIKON_FlashMode 0xD167 | 1862 #define PTP_DPC_NIKON_FlashMode 0xD167 |
1665 #define PTP_DPC_NIKON_FlashCommanderMode 0xD168 | 1863 #define PTP_DPC_NIKON_FlashCommanderMode 0xD168 |
1666 #define PTP_DPC_NIKON_FlashSign 0xD169 | 1864 #define PTP_DPC_NIKON_FlashSign 0xD169 |
1667 #define PTP_DPC_NIKON_ISO_Auto 0xD16A | 1865 #define PTP_DPC_NIKON_ISO_Auto 0xD16A |
1668 #define PTP_DPC_NIKON_RemoteTimeout 0xD16B | 1866 #define PTP_DPC_NIKON_RemoteTimeout 0xD16B |
1669 #define PTP_DPC_NIKON_GridDisplay 0xD16C | 1867 #define PTP_DPC_NIKON_GridDisplay 0xD16C |
1670 #define PTP_DPC_NIKON_FlashModeManualPower 0xD16D | 1868 #define PTP_DPC_NIKON_FlashModeManualPower 0xD16D |
1671 #define PTP_DPC_NIKON_FlashModeCommanderPower 0xD16E | 1869 #define PTP_DPC_NIKON_FlashModeCommanderPower 0xD16E |
1672 #define PTP_DPC_NIKON_AutoFP 0xD16F | 1870 #define PTP_DPC_NIKON_AutoFP 0xD16F |
| 1871 #define PTP_DPC_NIKON_DateImprintSetting 0xD170 |
| 1872 #define PTP_DPC_NIKON_DateCounterSelect 0xD171 |
| 1873 #define PTP_DPC_NIKON_DateCountData 0xD172 |
| 1874 #define PTP_DPC_NIKON_DateCountDisplaySetting 0xD173 |
| 1875 #define PTP_DPC_NIKON_RangeFinderSetting 0xD174 |
1673 #define PTP_DPC_NIKON_CSMMenu 0xD180 | 1876 #define PTP_DPC_NIKON_CSMMenu 0xD180 |
1674 #define PTP_DPC_NIKON_WarningDisplay 0xD181 | 1877 #define PTP_DPC_NIKON_WarningDisplay 0xD181 |
1675 #define PTP_DPC_NIKON_BatteryCellKind 0xD182 | 1878 #define PTP_DPC_NIKON_BatteryCellKind 0xD182 |
1676 #define PTP_DPC_NIKON_ISOAutoHiLimit 0xD183 | 1879 #define PTP_DPC_NIKON_ISOAutoHiLimit 0xD183 |
1677 #define PTP_DPC_NIKON_DynamicAFArea 0xD184 | 1880 #define PTP_DPC_NIKON_DynamicAFArea 0xD184 |
1678 #define PTP_DPC_NIKON_ContinuousSpeedHigh 0xD186 | 1881 #define PTP_DPC_NIKON_ContinuousSpeedHigh 0xD186 |
1679 #define PTP_DPC_NIKON_InfoDispSetting 0xD187 | 1882 #define PTP_DPC_NIKON_InfoDispSetting 0xD187 |
1680 #define PTP_DPC_NIKON_PreviewButton 0xD189 | 1883 #define PTP_DPC_NIKON_PreviewButton 0xD189 |
1681 #define PTP_DPC_NIKON_PreviewButton2 0xD18A | 1884 #define PTP_DPC_NIKON_PreviewButton2 0xD18A |
1682 #define PTP_DPC_NIKON_AEAFLockButton2 0xD18B | 1885 #define PTP_DPC_NIKON_AEAFLockButton2 0xD18B |
1683 #define PTP_DPC_NIKON_IndicatorDisp 0xD18D | 1886 #define PTP_DPC_NIKON_IndicatorDisp 0xD18D |
1684 #define PTP_DPC_NIKON_CellKindPriority 0xD18E | 1887 #define PTP_DPC_NIKON_CellKindPriority 0xD18E |
1685 #define PTP_DPC_NIKON_BracketingFramesAndSteps 0xD190 | 1888 #define PTP_DPC_NIKON_BracketingFramesAndSteps 0xD190 |
1686 #define PTP_DPC_NIKON_LiveViewMode 0xD1A0 | 1889 #define PTP_DPC_NIKON_LiveViewMode 0xD1A0 |
1687 #define PTP_DPC_NIKON_LiveViewDriveMode 0xD1A1 | 1890 #define PTP_DPC_NIKON_LiveViewDriveMode 0xD1A1 |
1688 #define PTP_DPC_NIKON_LiveViewStatus 0xD1A2 | 1891 #define PTP_DPC_NIKON_LiveViewStatus 0xD1A2 |
1689 #define PTP_DPC_NIKON_LiveViewImageZoomRatio 0xD1A3 | 1892 #define PTP_DPC_NIKON_LiveViewImageZoomRatio 0xD1A3 |
1690 #define PTP_DPC_NIKON_LiveViewProhibitCondition 0xD1A4 | 1893 #define PTP_DPC_NIKON_LiveViewProhibitCondition 0xD1A4 |
| 1894 #define PTP_DPC_NIKON_MovieShutterSpeed 0xD1A8 |
| 1895 #define PTP_DPC_NIKON_MovieFNumber 0xD1A9 |
| 1896 #define PTP_DPC_NIKON_MovieISO 0xD1AA |
| 1897 #define PTP_DPC_NIKON_LiveViewMovieMode 0xD1AC /* ? */ |
1691 #define PTP_DPC_NIKON_ExposureDisplayStatus 0xD1B0 | 1898 #define PTP_DPC_NIKON_ExposureDisplayStatus 0xD1B0 |
1692 #define PTP_DPC_NIKON_ExposureIndicateStatus 0xD1B1 | 1899 #define PTP_DPC_NIKON_ExposureIndicateStatus 0xD1B1 |
1693 #define PTP_DPC_NIKON_InfoDispErrStatus 0xD1B2 | 1900 #define PTP_DPC_NIKON_InfoDispErrStatus 0xD1B2 |
1694 #define PTP_DPC_NIKON_ExposureIndicateLightup 0xD1B3 | 1901 #define PTP_DPC_NIKON_ExposureIndicateLightup 0xD1B3 |
1695 #define PTP_DPC_NIKON_FlashOpen 0xD1C0 | 1902 #define PTP_DPC_NIKON_FlashOpen 0xD1C0 |
1696 #define PTP_DPC_NIKON_FlashCharged 0xD1C1 | 1903 #define PTP_DPC_NIKON_FlashCharged 0xD1C1 |
1697 #define PTP_DPC_NIKON_FlashMRepeatValue 0xD1D0 | 1904 #define PTP_DPC_NIKON_FlashMRepeatValue 0xD1D0 |
1698 #define PTP_DPC_NIKON_FlashMRepeatCount 0xD1D1 | 1905 #define PTP_DPC_NIKON_FlashMRepeatCount 0xD1D1 |
1699 #define PTP_DPC_NIKON_FlashMRepeatInterval 0xD1D2 | 1906 #define PTP_DPC_NIKON_FlashMRepeatInterval 0xD1D2 |
1700 #define PTP_DPC_NIKON_FlashCommandChannel 0xD1D3 | 1907 #define PTP_DPC_NIKON_FlashCommandChannel 0xD1D3 |
1701 #define PTP_DPC_NIKON_FlashCommandSelfMode 0xD1D4 | 1908 #define PTP_DPC_NIKON_FlashCommandSelfMode 0xD1D4 |
1702 #define PTP_DPC_NIKON_FlashCommandSelfCompensation 0xD1D5 | 1909 #define PTP_DPC_NIKON_FlashCommandSelfCompensation 0xD1D5 |
1703 #define PTP_DPC_NIKON_FlashCommandSelfValue 0xD1D6 | 1910 #define PTP_DPC_NIKON_FlashCommandSelfValue 0xD1D6 |
1704 #define PTP_DPC_NIKON_FlashCommandAMode 0xD1D7 | 1911 #define PTP_DPC_NIKON_FlashCommandAMode 0xD1D7 |
1705 #define PTP_DPC_NIKON_FlashCommandACompensation 0xD1D8 | 1912 #define PTP_DPC_NIKON_FlashCommandACompensation 0xD1D8 |
1706 #define PTP_DPC_NIKON_FlashCommandAValue 0xD1D9 | 1913 #define PTP_DPC_NIKON_FlashCommandAValue 0xD1D9 |
1707 #define PTP_DPC_NIKON_FlashCommandBMode 0xD1DA | 1914 #define PTP_DPC_NIKON_FlashCommandBMode 0xD1DA |
1708 #define PTP_DPC_NIKON_FlashCommandBCompensation 0xD1DB | 1915 #define PTP_DPC_NIKON_FlashCommandBCompensation 0xD1DB |
1709 #define PTP_DPC_NIKON_FlashCommandBValue 0xD1DC | 1916 #define PTP_DPC_NIKON_FlashCommandBValue 0xD1DC |
| 1917 #define PTP_DPC_NIKON_ApplicationMode 0xD1F0 |
| 1918 #define PTP_DPC_NIKON_ActiveSlot 0xD1F2 |
1710 #define PTP_DPC_NIKON_ActivePicCtrlItem 0xD200 | 1919 #define PTP_DPC_NIKON_ActivePicCtrlItem 0xD200 |
1711 #define PTP_DPC_NIKON_ChangePicCtrlItem 0xD201 | 1920 #define PTP_DPC_NIKON_ChangePicCtrlItem 0xD201 |
| 1921 #define PTP_DPC_NIKON_MovieNrHighISO 0xD236 |
| 1922 |
| 1923 |
| 1924 /* Nikon V1 (or WU adapter?) Trace */ |
| 1925 /* d241 - gets string "Nikon_WU2_0090B5123C61" */ |
| 1926 #define PTP_DPC_NIKON_D241 0xD241 |
| 1927 /* d244 - gets a single byte 0x00 */ |
| 1928 #define PTP_DPC_NIKON_D244 0xD244 |
| 1929 /* d247 - gets 3 bytes 0x01 0x00 0x00 */ |
| 1930 #define PTP_DPC_NIKON_D247 0xD247 |
| 1931 /* S9700 */ |
| 1932 #define PTP_DPC_NIKON_GUID 0xD24F |
| 1933 /* d250 - gets a string "0000123C61" */ |
| 1934 #define PTP_DPC_NIKON_D250 0xD250 |
| 1935 /* d251 - gets a 0x0100000d */ |
| 1936 #define PTP_DPC_NIKON_D251 0xD251 |
| 1937 |
| 1938 /* this is irregular, as it should be -0x5000 or 0xD000 based */ |
| 1939 #define PTP_DPC_NIKON_1_ISO 0xF002 |
| 1940 #define PTP_DPC_NIKON_1_ImageCompression 0xF009 |
| 1941 #define PTP_DPC_NIKON_1_ImageSize 0xF00A |
| 1942 #define PTP_DPC_NIKON_1_WhiteBalance 0xF00C |
| 1943 #define PTP_DPC_NIKON_1_LongExposureNoiseReduction 0xF00D |
| 1944 #define PTP_DPC_NIKON_1_HiISONoiseReduction 0xF00E |
| 1945 #define PTP_DPC_NIKON_1_ActiveDLighting 0xF00F |
| 1946 #define PTP_DPC_NIKON_1_MovQuality 0xF01C |
1712 | 1947 |
1713 /* Fuji specific */ | 1948 /* Fuji specific */ |
1714 #define PTP_DPC_FUJI_ColorTemperature 0xD017 | 1949 #define PTP_DPC_FUJI_ColorTemperature 0xD017 |
1715 #define PTP_DPC_FUJI_Quality 0xD018 | 1950 #define PTP_DPC_FUJI_Quality 0xD018 |
1716 #define PTP_DPC_FUJI_ReleaseMode 0xD201 | 1951 #define PTP_DPC_FUJI_ReleaseMode 0xD201 |
1717 #define PTP_DPC_FUJI_FocusAreas 0xD206 | 1952 #define PTP_DPC_FUJI_FocusAreas 0xD206 |
1718 #define PTP_DPC_FUJI_AELock 0xD213 | 1953 #define PTP_DPC_FUJI_AELock 0xD213 |
1719 #define PTP_DPC_FUJI_Aperture 0xD218 | 1954 #define PTP_DPC_FUJI_Aperture 0xD218 |
1720 #define PTP_DPC_FUJI_ShutterSpeed 0xD219 | 1955 #define PTP_DPC_FUJI_ShutterSpeed 0xD219 |
1721 | 1956 |
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1816 #define PTP_DPC_OLYMPUS_ResolutionValueSetting 0xD155 | 2051 #define PTP_DPC_OLYMPUS_ResolutionValueSetting 0xD155 |
1817 #define PTP_DPC_OLYMPUS_AFTargetSize 0xD157 | 2052 #define PTP_DPC_OLYMPUS_AFTargetSize 0xD157 |
1818 #define PTP_DPC_OLYMPUS_LightSensorMode 0xD158 | 2053 #define PTP_DPC_OLYMPUS_LightSensorMode 0xD158 |
1819 #define PTP_DPC_OLYMPUS_AEBracket 0xD159 | 2054 #define PTP_DPC_OLYMPUS_AEBracket 0xD159 |
1820 #define PTP_DPC_OLYMPUS_WBRBBracket 0xD15A | 2055 #define PTP_DPC_OLYMPUS_WBRBBracket 0xD15A |
1821 #define PTP_DPC_OLYMPUS_WBGMBracket 0xD15B | 2056 #define PTP_DPC_OLYMPUS_WBGMBracket 0xD15B |
1822 #define PTP_DPC_OLYMPUS_FlashBracket 0xD15C | 2057 #define PTP_DPC_OLYMPUS_FlashBracket 0xD15C |
1823 #define PTP_DPC_OLYMPUS_ISOBracket 0xD15D | 2058 #define PTP_DPC_OLYMPUS_ISOBracket 0xD15D |
1824 #define PTP_DPC_OLYMPUS_MyModeStatus 0xD15E | 2059 #define PTP_DPC_OLYMPUS_MyModeStatus 0xD15E |
1825 | 2060 |
| 2061 /* Sony A900 */ |
| 2062 #define PTP_DPC_SONY_DPCCompensation 0xD200 |
| 2063 #define PTP_DPC_SONY_DRangeOptimize 0xD201 |
| 2064 #define PTP_DPC_SONY_ImageSize 0xD203 |
| 2065 #define PTP_DPC_SONY_ShutterSpeed 0xD20D |
| 2066 #define PTP_DPC_SONY_ColorTemp 0xD20F |
| 2067 #define PTP_DPC_SONY_CCFilter 0xD210 |
| 2068 #define PTP_DPC_SONY_AspectRatio 0xD211 |
| 2069 #define PTP_DPC_SONY_ExposeIndex 0xD216 |
| 2070 #define PTP_DPC_SONY_PictureEffect 0xD21B |
| 2071 #define PTP_DPC_SONY_ABFilter 0xD21C |
| 2072 #define PTP_DPC_SONY_ISO 0xD21E /* ? */ |
| 2073 /* also seen: D2C3 D2C4 */ |
| 2074 /* semi control opcodes */ |
| 2075 #define PTP_DPC_SONY_Movie 0xD2C8 /* ? */ |
| 2076 #define PTP_DPC_SONY_StillImage 0xD2C7 /* ? */ |
| 2077 |
| 2078 |
| 2079 |
1826 /* Casio EX-F1 */ | 2080 /* Casio EX-F1 */ |
1827 #define PTP_DPC_CASIO_MONITOR 0xD001 | 2081 #define PTP_DPC_CASIO_MONITOR 0xD001 |
1828 #define PTP_DPC_CASIO_STORAGE 0xD002 //Not reported by DeviceInfo? | 2082 #define PTP_DPC_CASIO_STORAGE 0xD002 //Not reported by DeviceInfo? |
1829 #define PTP_DPC_CASIO_UNKNOWN_1 0xD004 | 2083 #define PTP_DPC_CASIO_UNKNOWN_1 0xD004 |
1830 #define PTP_DPC_CASIO_UNKNOWN_2 0xD005 | 2084 #define PTP_DPC_CASIO_UNKNOWN_2 0xD005 |
1831 #define PTP_DPC_CASIO_UNKNOWN_3 0xD007 | 2085 #define PTP_DPC_CASIO_UNKNOWN_3 0xD007 |
1832 #define PTP_DPC_CASIO_RECORD_LIGHT 0xD008 | 2086 #define PTP_DPC_CASIO_RECORD_LIGHT 0xD008 |
1833 #define PTP_DPC_CASIO_UNKNOWN_4 0xD009 | 2087 #define PTP_DPC_CASIO_UNKNOWN_4 0xD009 |
1834 #define PTP_DPC_CASIO_UNKNOWN_5 0xD00A | 2088 #define PTP_DPC_CASIO_UNKNOWN_5 0xD00A |
1835 #define PTP_DPC_CASIO_MOVIE_MODE 0xD00B | 2089 #define PTP_DPC_CASIO_MOVIE_MODE 0xD00B |
1836 #define PTP_DPC_CASIO_HD_SETTING 0xD00C | 2090 #define PTP_DPC_CASIO_HD_SETTING 0xD00C |
1837 #define PTP_DPC_CASIO_HS_SETTING 0xD00D | 2091 #define PTP_DPC_CASIO_HS_SETTING 0xD00D |
1838 #define PTP_DPC_CASIO_CS_HIGH_SPEED 0xD00F | 2092 #define PTP_DPC_CASIO_CS_HIGH_SPEED 0xD00F |
1839 #define PTP_DPC_CASIO_CS_UPPER_LIMIT 0xD010 | 2093 #define PTP_DPC_CASIO_CS_UPPER_LIMIT 0xD010 |
1840 #define PTP_DPC_CASIO_CS_SHOT 0xD011 | 2094 #define PTP_DPC_CASIO_CS_SHOT 0xD011 |
1841 #define PTP_DPC_CASIO_UNKNOWN_6 0xD012 | 2095 #define PTP_DPC_CASIO_UNKNOWN_6 0xD012 |
1842 #define PTP_DPC_CASIO_UNKNOWN_7 0xD013 | 2096 #define PTP_DPC_CASIO_UNKNOWN_7 0xD013 |
1843 #define PTP_DPC_CASIO_UNKNOWN_8 0xD015 | 2097 #define PTP_DPC_CASIO_UNKNOWN_8 0xD015 |
1844 #define PTP_DPC_CASIO_UNKNOWN_9 0xD017 | 2098 #define PTP_DPC_CASIO_UNKNOWN_9 0xD017 |
1845 #define PTP_DPC_CASIO_UNKNOWN_10 0xD018 | 2099 #define PTP_DPC_CASIO_UNKNOWN_10 0xD018 |
1846 #define PTP_DPC_CASIO_UNKNOWN_11 0xD019 | 2100 #define PTP_DPC_CASIO_UNKNOWN_11 0xD019 |
1847 #define PTP_DPC_CASIO_UNKNOWN_12 0xD01A | 2101 #define PTP_DPC_CASIO_UNKNOWN_12 0xD01A |
1848 #define PTP_DPC_CASIO_UNKNOWN_13 0xD01B | 2102 #define PTP_DPC_CASIO_UNKNOWN_13 0xD01B |
1849 #define PTP_DPC_CASIO_UNKNOWN_14 0xD01C | 2103 #define PTP_DPC_CASIO_UNKNOWN_14 0xD01C |
1850 #define PTP_DPC_CASIO_UNKNOWN_15 0xD01D | 2104 #define PTP_DPC_CASIO_UNKNOWN_15 0xD01D |
1851 #define PTP_DPC_CASIO_UNKNOWN_16 0xD020 | 2105 #define PTP_DPC_CASIO_UNKNOWN_16 0xD020 |
1852 #define PTP_DPC_CASIO_UNKNOWN_17 0xD030 | 2106 #define PTP_DPC_CASIO_UNKNOWN_17 0xD030 |
1853 #define PTP_DPC_CASIO_UNKNOWN_18 0xD080 | 2107 #define PTP_DPC_CASIO_UNKNOWN_18 0xD080 |
1854 | 2108 |
| 2109 #define PTP_DPC_RICOH_ShutterSpeed 0xD00F |
| 2110 |
1855 /* MTP specific Object Properties */ | 2111 /* MTP specific Object Properties */ |
1856 #define PTP_OPC_StorageID 0xDC01 | 2112 #define PTP_OPC_StorageID 0xDC01 |
1857 #define PTP_OPC_ObjectFormat 0xDC02 | 2113 #define PTP_OPC_ObjectFormat 0xDC02 |
1858 #define PTP_OPC_ProtectionStatus 0xDC03 | 2114 #define PTP_OPC_ProtectionStatus 0xDC03 |
1859 #define PTP_OPC_ObjectSize 0xDC04 | 2115 #define PTP_OPC_ObjectSize 0xDC04 |
1860 #define PTP_OPC_AssociationType 0xDC05 | 2116 #define PTP_OPC_AssociationType 0xDC05 |
1861 #define PTP_OPC_AssociationDesc 0xDC06 | 2117 #define PTP_OPC_AssociationDesc 0xDC06 |
1862 #define PTP_OPC_ObjectFileName 0xDC07 | 2118 #define PTP_OPC_ObjectFileName 0xDC07 |
1863 #define PTP_OPC_DateCreated 0xDC08 | 2119 #define PTP_OPC_DateCreated 0xDC08 |
1864 #define PTP_OPC_DateModified 0xDC09 | 2120 #define PTP_OPC_DateModified 0xDC09 |
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2048 | 2304 |
2049 typedef struct _PTPParams PTPParams; | 2305 typedef struct _PTPParams PTPParams; |
2050 | 2306 |
2051 | 2307 |
2052 typedef uint16_t (* PTPDataGetFunc) (PTPParams* params, void*priv, | 2308 typedef uint16_t (* PTPDataGetFunc) (PTPParams* params, void*priv, |
2053 unsigned long wantlen, | 2309 unsigned long wantlen, |
2054 unsigned char *data, unsigned long *gotl
en); | 2310 unsigned char *data, unsigned long *gotl
en); |
2055 | 2311 |
2056 typedef uint16_t (* PTPDataPutFunc) (PTPParams* params, void*priv, | 2312 typedef uint16_t (* PTPDataPutFunc) (PTPParams* params, void*priv, |
2057 unsigned long sendlen, | 2313 unsigned long sendlen, |
2058 » unsigned char *data, unsigned long *putl
en); | 2314 » unsigned char *data); |
2059 typedef struct _PTPDataHandler { | 2315 typedef struct _PTPDataHandler { |
2060 PTPDataGetFunc getfunc; | 2316 PTPDataGetFunc getfunc; |
2061 PTPDataPutFunc putfunc; | 2317 PTPDataPutFunc putfunc; |
2062 void *priv; | 2318 void *priv; |
2063 } PTPDataHandler; | 2319 } PTPDataHandler; |
2064 | 2320 |
2065 /* | 2321 /* |
2066 * This functions take PTP oriented arguments and send them over an | 2322 * This functions take PTP oriented arguments and send them over an |
2067 * appropriate data layer doing byteorder conversion accordingly. | 2323 * appropriate data layer doing byteorder conversion accordingly. |
2068 */ | 2324 */ |
2069 typedef uint16_t (* PTPIOSendReq)» (PTPParams* params, PTPContainer* req); | 2325 typedef uint16_t (* PTPIOSendReq)» (PTPParams* params, PTPContainer* req, i
nt dataphase); |
2070 typedef uint16_t (* PTPIOSendData) (PTPParams* params, PTPContainer* ptp, | 2326 typedef uint16_t (* PTPIOSendData) (PTPParams* params, PTPContainer* ptp, |
2071 » » » » » unsigned long size, PTPDataHandler*gett
er); | 2327 » » » » » uint64_t size, PTPDataHandler*getter); |
2072 | 2328 |
2073 typedef uint16_t (* PTPIOGetResp) (PTPParams* params, PTPContainer* resp); | 2329 typedef uint16_t (* PTPIOGetResp) (PTPParams* params, PTPContainer* resp); |
2074 typedef uint16_t (* PTPIOGetData) (PTPParams* params, PTPContainer* ptp, | 2330 typedef uint16_t (* PTPIOGetData) (PTPParams* params, PTPContainer* ptp, |
2075 PTPDataHandler *putter); | 2331 PTPDataHandler *putter); |
2076 typedef uint16_t (* PTPIOCancelReq) (PTPParams* params, uint32_t transaction
_id); | 2332 typedef uint16_t (* PTPIOCancelReq) (PTPParams* params, uint32_t transaction
_id); |
2077 | 2333 |
2078 /* debug functions */ | 2334 /* debug functions */ |
2079 typedef void (* PTPErrorFunc) (void *data, const char *format, va_list args) | 2335 typedef void (* PTPErrorFunc) (void *data, const char *format, va_list args) |
2080 #if (__GNUC__ >= 3) | 2336 #if (__GNUC__ >= 3) |
2081 __attribute__((__format__(printf,2,0))) | 2337 __attribute__((__format__(printf,2,0))) |
(...skipping 11 matching lines...) Expand all Loading... |
2093 #define PTPOBJECT_OBJECTINFO_LOADED (1<<0) | 2349 #define PTPOBJECT_OBJECTINFO_LOADED (1<<0) |
2094 #define PTPOBJECT_CANONFLAGS_LOADED (1<<1) | 2350 #define PTPOBJECT_CANONFLAGS_LOADED (1<<1) |
2095 #define PTPOBJECT_MTPPROPLIST_LOADED (1<<2) | 2351 #define PTPOBJECT_MTPPROPLIST_LOADED (1<<2) |
2096 #define PTPOBJECT_DIRECTORY_LOADED (1<<3) | 2352 #define PTPOBJECT_DIRECTORY_LOADED (1<<3) |
2097 #define PTPOBJECT_PARENTOBJECT_LOADED (1<<4) | 2353 #define PTPOBJECT_PARENTOBJECT_LOADED (1<<4) |
2098 #define PTPOBJECT_STORAGEID_LOADED (1<<5) | 2354 #define PTPOBJECT_STORAGEID_LOADED (1<<5) |
2099 | 2355 |
2100 PTPObjectInfo oi; | 2356 PTPObjectInfo oi; |
2101 uint32_t canon_flags; | 2357 uint32_t canon_flags; |
2102 MTPProperties *mtpprops; | 2358 MTPProperties *mtpprops; |
2103 » int» » nrofmtpprops; | 2359 » unsigned int» nrofmtpprops; |
2104 }; | 2360 }; |
2105 typedef struct _PTPObject PTPObject; | 2361 typedef struct _PTPObject PTPObject; |
2106 | 2362 |
| 2363 /* The Device Property Cache */ |
| 2364 struct _PTPDeviceProperty { |
| 2365 time_t timestamp; |
| 2366 PTPDevicePropDesc desc; |
| 2367 PTPPropertyValue value; |
| 2368 }; |
| 2369 typedef struct _PTPDeviceProperty PTPDeviceProperty; |
| 2370 |
| 2371 /* Transaction data phase description, internal flags to sendreq / transaction d
river. */ |
| 2372 #define PTP_DP_NODATA 0x0000 /* no data phase */ |
| 2373 #define PTP_DP_SENDDATA 0x0001 /* sending data */ |
| 2374 #define PTP_DP_GETDATA 0x0002 /* receiving data */ |
| 2375 #define PTP_DP_DATA_MASK 0x00ff /* data phase mask */ |
| 2376 |
2107 struct _PTPParams { | 2377 struct _PTPParams { |
2108 /* device flags */ | 2378 /* device flags */ |
2109 uint32_t device_flags; | 2379 uint32_t device_flags; |
2110 | 2380 |
2111 /* data layer byteorder */ | 2381 /* data layer byteorder */ |
2112 uint8_t byteorder; | 2382 uint8_t byteorder; |
2113 uint16_t maxpacketsize; | 2383 uint16_t maxpacketsize; |
2114 | 2384 |
2115 /* PTP IO: Custom IO functions */ | 2385 /* PTP IO: Custom IO functions */ |
2116 PTPIOSendReq sendreq_func; | 2386 PTPIOSendReq sendreq_func; |
2117 PTPIOSendData senddata_func; | 2387 PTPIOSendData senddata_func; |
2118 PTPIOGetResp getresp_func; | 2388 PTPIOGetResp getresp_func; |
2119 PTPIOGetData getdata_func; | 2389 PTPIOGetData getdata_func; |
2120 PTPIOGetResp event_check; | 2390 PTPIOGetResp event_check; |
2121 PTPIOGetResp event_wait; | 2391 PTPIOGetResp event_wait; |
2122 PTPIOCancelReq cancelreq_func; | 2392 PTPIOCancelReq cancelreq_func; |
2123 | 2393 |
2124 /* Custom error and debug function */ | 2394 /* Custom error and debug function */ |
2125 PTPErrorFunc error_func; | 2395 PTPErrorFunc error_func; |
2126 PTPDebugFunc debug_func; | 2396 PTPDebugFunc debug_func; |
2127 | 2397 |
2128 /* Data passed to above functions */ | 2398 /* Data passed to above functions */ |
2129 void *data; | 2399 void *data; |
2130 | 2400 |
2131 /* ptp transaction ID */ | 2401 /* ptp transaction ID */ |
2132 uint32_t transaction_id; | 2402 uint32_t transaction_id; |
2133 /* ptp session ID */ | 2403 /* ptp session ID */ |
2134 uint32_t session_id; | 2404 uint32_t session_id; |
2135 | 2405 |
| 2406 /* used for open capture */ |
| 2407 uint32_t opencapture_transid; |
| 2408 |
2136 /* PTP IO: if we have MTP style split header/data transfers */ | 2409 /* PTP IO: if we have MTP style split header/data transfers */ |
2137 int split_header_data; | 2410 int split_header_data; |
2138 int ocs64; /* 64bit objectsize */ | 2411 int ocs64; /* 64bit objectsize */ |
2139 | 2412 |
2140 /* PTP: internal structures used by ptp driver */ | 2413 /* PTP: internal structures used by ptp driver */ |
2141 PTPObject *objects; | 2414 PTPObject *objects; |
2142 » int» » nrofobjects; | 2415 » unsigned int» nrofobjects; |
2143 | 2416 |
2144 PTPDeviceInfo deviceinfo; | 2417 PTPDeviceInfo deviceinfo; |
2145 | 2418 |
2146 /* PTP: the current event queue */ | 2419 /* PTP: the current event queue */ |
2147 PTPContainer *events; | 2420 PTPContainer *events; |
2148 int nrofevents; | 2421 int nrofevents; |
2149 | 2422 |
| 2423 /* live view enabled */ |
| 2424 int inliveview; |
| 2425 |
| 2426 /* PTP: Device Property Caching */ |
| 2427 PTPDeviceProperty *deviceproperties; |
| 2428 unsigned int nrofdeviceproperties; |
| 2429 |
2150 /* PTP: Canon specific flags list */ | 2430 /* PTP: Canon specific flags list */ |
2151 PTPCanon_Property *canon_props; | 2431 PTPCanon_Property *canon_props; |
2152 » int» » » nrofcanon_props; | 2432 » unsigned int» » nrofcanon_props; |
2153 int canon_viewfinder_on; | 2433 int canon_viewfinder_on; |
2154 int canon_event_mode; | 2434 int canon_event_mode; |
2155 | 2435 |
2156 /* PTP: Canon EOS event queue */ | 2436 /* PTP: Canon EOS event queue */ |
2157 PTPCanon_changes_entry *backlogentries; | 2437 PTPCanon_changes_entry *backlogentries; |
2158 » int» » » nrofbacklogentries; | 2438 » unsigned int» » nrofbacklogentries; |
2159 int eos_captureenabled; | 2439 int eos_captureenabled; |
2160 int eos_viewfinderenabled; | |
2161 int eos_camerastatus; | 2440 int eos_camerastatus; |
2162 | 2441 |
| 2442 /* PTP: Nikon specifics */ |
| 2443 int controlmode; |
| 2444 int event90c7works; |
| 2445 int deletesdramfails; |
| 2446 |
2163 /* PTP: Wifi profiles */ | 2447 /* PTP: Wifi profiles */ |
2164 uint8_t wifi_profiles_version; | 2448 uint8_t wifi_profiles_version; |
2165 uint8_t wifi_profiles_number; | 2449 uint8_t wifi_profiles_number; |
2166 PTPNIKONWifiProfile *wifi_profiles; | 2450 PTPNIKONWifiProfile *wifi_profiles; |
2167 | 2451 |
2168 /* IO: PTP/IP related data */ | 2452 /* IO: PTP/IP related data */ |
2169 int cmdfd, evtfd; | 2453 int cmdfd, evtfd; |
2170 uint8_t cameraguid[16]; | 2454 uint8_t cameraguid[16]; |
2171 uint32_t eventpipeid; | 2455 uint32_t eventpipeid; |
2172 char *cameraname; | 2456 char *cameraname; |
2173 | 2457 |
2174 /* Olympus UMS wrapping related data */ | 2458 /* Olympus UMS wrapping related data */ |
2175 PTPDeviceInfo outer_deviceinfo; | 2459 PTPDeviceInfo outer_deviceinfo; |
2176 char *olympus_cmd; | 2460 char *olympus_cmd; |
2177 char *olympus_reply; | 2461 char *olympus_reply; |
| 2462 struct _PTPParams *outer_params; |
2178 | 2463 |
2179 #ifdef HAVE_ICONV | 2464 #if defined(HAVE_ICONV) && defined(HAVE_LANGINFO_H) |
2180 /* PTP: iconv converters */ | 2465 /* PTP: iconv converters */ |
2181 iconv_t cd_locale_to_ucs2; | 2466 iconv_t cd_locale_to_ucs2; |
2182 iconv_t cd_ucs2_to_locale; | 2467 iconv_t cd_ucs2_to_locale; |
2183 #endif | 2468 #endif |
2184 | 2469 |
2185 /* IO: Sometimes the response packet get send in the dataphase | 2470 /* IO: Sometimes the response packet get send in the dataphase |
2186 * too. This only happens for a Samsung player now. | 2471 * too. This only happens for a Samsung player now. |
2187 */ | 2472 */ |
2188 uint8_t *response_packet; | 2473 uint8_t *response_packet; |
2189 uint16_t response_packet_size; | 2474 uint16_t response_packet_size; |
2190 }; | 2475 }; |
2191 | 2476 |
| 2477 /* Asynchronous event callback */ |
| 2478 typedef void(* PTPEventCbFn) (PTPParams *params, uint16_t code, PTPContainer *ev
ent, void *user_data); |
| 2479 |
2192 /* last, but not least - ptp functions */ | 2480 /* last, but not least - ptp functions */ |
2193 uint16_t ptp_usb_sendreq» (PTPParams* params, PTPContainer* req); | 2481 uint16_t ptp_usb_sendreq» (PTPParams* params, PTPContainer* req, int datap
hase); |
2194 uint16_t ptp_usb_senddata (PTPParams* params, PTPContainer* ptp, | 2482 uint16_t ptp_usb_senddata (PTPParams* params, PTPContainer* ptp, |
2195 » » » » unsigned long size, PTPDataHandler *handler); | 2483 » » » » uint64_t size, PTPDataHandler *handler); |
2196 uint16_t ptp_usb_getresp (PTPParams* params, PTPContainer* resp); | 2484 uint16_t ptp_usb_getresp (PTPParams* params, PTPContainer* resp); |
2197 uint16_t ptp_usb_getdata (PTPParams* params, PTPContainer* ptp, | 2485 uint16_t ptp_usb_getdata (PTPParams* params, PTPContainer* ptp, |
2198 PTPDataHandler *handler); | 2486 PTPDataHandler *handler); |
2199 uint16_t ptp_usb_event_check (PTPParams* params, PTPContainer* event); | 2487 uint16_t ptp_usb_event_check (PTPParams* params, PTPContainer* event); |
2200 uint16_t ptp_usb_event_wait (PTPParams* params, PTPContainer* event); | 2488 uint16_t ptp_usb_event_wait (PTPParams* params, PTPContainer* event); |
| 2489 uint16_t ptp_usb_event_async (PTPParams *params, PTPEventCbFn cb, void *user_
data); |
2201 | 2490 |
2202 uint16_t ptp_usb_control_get_extended_event_data (PTPParams *params, char *buffe
r, int *size); | 2491 uint16_t ptp_usb_control_get_extended_event_data (PTPParams *params, char *buffe
r, int *size); |
2203 uint16_t ptp_usb_control_device_reset_request (PTPParams *params); | 2492 uint16_t ptp_usb_control_device_reset_request (PTPParams *params); |
2204 uint16_t ptp_usb_control_get_device_status (PTPParams *params, char *buffer, int
*size); | 2493 uint16_t ptp_usb_control_get_device_status (PTPParams *params, char *buffer, int
*size); |
2205 uint16_t ptp_usb_control_cancel_request (PTPParams *params, uint32_t transid); | 2494 uint16_t ptp_usb_control_cancel_request (PTPParams *params, uint32_t transid); |
2206 | 2495 |
2207 | 2496 |
2208 int ptp_ptpip_connect (PTPParams* params, const char *port); | 2497 int ptp_ptpip_connect (PTPParams* params, const char *port); |
2209 uint16_t ptp_ptpip_sendreq» (PTPParams* params, PTPContainer* req); | 2498 uint16_t ptp_ptpip_sendreq» (PTPParams* params, PTPContainer* req, int datap
hase); |
2210 uint16_t ptp_ptpip_senddata (PTPParams* params, PTPContainer* ptp, | 2499 uint16_t ptp_ptpip_senddata (PTPParams* params, PTPContainer* ptp, |
2211 » » » » unsigned long size, PTPDataHandler *handler); | 2500 » » » » uint64_t size, PTPDataHandler *handler); |
2212 uint16_t ptp_ptpip_getresp (PTPParams* params, PTPContainer* resp); | 2501 uint16_t ptp_ptpip_getresp (PTPParams* params, PTPContainer* resp); |
2213 uint16_t ptp_ptpip_getdata (PTPParams* params, PTPContainer* ptp, | 2502 uint16_t ptp_ptpip_getdata (PTPParams* params, PTPContainer* ptp, |
2214 PTPDataHandler *handler); | 2503 PTPDataHandler *handler); |
2215 uint16_t ptp_ptpip_event_wait (PTPParams* params, PTPContainer* event); | 2504 uint16_t ptp_ptpip_event_wait (PTPParams* params, PTPContainer* event); |
2216 uint16_t ptp_ptpip_event_check (PTPParams* params, PTPContainer* event); | 2505 uint16_t ptp_ptpip_event_check (PTPParams* params, PTPContainer* event); |
2217 | 2506 |
2218 uint16_t ptp_getdeviceinfo (PTPParams* params, PTPDeviceInfo* deviceinfo); | 2507 uint16_t ptp_getdeviceinfo (PTPParams* params, PTPDeviceInfo* deviceinfo); |
2219 | 2508 |
2220 uint16_t ptp_generic_no_data (PTPParams* params, uint16_t opcode, unsigned in
t cnt, ...); | 2509 uint16_t ptp_generic_no_data (PTPParams* params, uint16_t opcode, unsigned in
t cnt, ...); |
2221 | 2510 |
2222 uint16_t ptp_opensession (PTPParams *params, uint32_t session); | 2511 uint16_t ptp_opensession (PTPParams *params, uint32_t session); |
2223 | 2512 |
| 2513 uint16_t ptp_transaction_new (PTPParams* params, PTPContainer* ptp, |
| 2514 uint16_t flags, uint64_t sendlen, |
| 2515 PTPDataHandler *handler |
| 2516 ); |
| 2517 uint16_t ptp_transaction (PTPParams* params, PTPContainer* ptp, |
| 2518 uint16_t flags, uint64_t sendlen, |
| 2519 unsigned char **data, unsigned int *recvlen |
| 2520 ); |
| 2521 |
2224 /** | 2522 /** |
2225 * ptp_closesession: | 2523 * ptp_closesession: |
2226 * params: PTPParams* | 2524 * params: PTPParams* |
2227 * | 2525 * |
2228 * Closes session. | 2526 * Closes session. |
2229 * | 2527 * |
2230 * Return values: Some PTP_RC_* code. | 2528 * Return values: Some PTP_RC_* code. |
2231 **/ | 2529 **/ |
2232 #define ptp_closesession(params) ptp_generic_no_data(params,PTP_OC_CloseSession,
0) | 2530 #define ptp_closesession(params) ptp_generic_no_data(params,PTP_OC_CloseSession,
0) |
| 2531 |
| 2532 /** |
| 2533 * ptp_powerdown: |
| 2534 * params: PTPParams* |
| 2535 * |
| 2536 * Powers down device. |
| 2537 * |
| 2538 * Return values: Some PTP_RC_* code. |
| 2539 **/ |
| 2540 #define ptp_powerdown(params) ptp_generic_no_data(params,PTP_OC_PowerDown,0) |
2233 /** | 2541 /** |
2234 * ptp_resetdevice: | 2542 * ptp_resetdevice: |
2235 * params: PTPParams* | 2543 * params: PTPParams* |
2236 * | 2544 * |
2237 * Uses the built-in function to reset the device | 2545 * Uses the built-in function to reset the device |
2238 * | 2546 * |
2239 * Return values: Some PTP_RC_* code. | 2547 * Return values: Some PTP_RC_* code. |
2240 * | 2548 * |
2241 */ | 2549 */ |
2242 #define ptp_resetdevice(params) ptp_generic_no_data(params,PTP_OC_ResetDevice,0) | 2550 #define ptp_resetdevice(params) ptp_generic_no_data(params,PTP_OC_ResetDevice,0) |
(...skipping 26 matching lines...) Expand all Loading... |
2269 uint16_t ptp_getobjectinfo (PTPParams *params, uint32_t handle, | 2577 uint16_t ptp_getobjectinfo (PTPParams *params, uint32_t handle, |
2270 PTPObjectInfo* objectinfo); | 2578 PTPObjectInfo* objectinfo); |
2271 | 2579 |
2272 uint16_t ptp_getobject (PTPParams *params, uint32_t handle, | 2580 uint16_t ptp_getobject (PTPParams *params, uint32_t handle, |
2273 unsigned char** object); | 2581 unsigned char** object); |
2274 uint16_t ptp_getobject_tofd (PTPParams* params, uint32_t handle, int fd); | 2582 uint16_t ptp_getobject_tofd (PTPParams* params, uint32_t handle, int fd); |
2275 uint16_t ptp_getobject_to_handler (PTPParams* params, uint32_t handle, PTPDataHa
ndler*); | 2583 uint16_t ptp_getobject_to_handler (PTPParams* params, uint32_t handle, PTPDataHa
ndler*); |
2276 uint16_t ptp_getpartialobject (PTPParams* params, uint32_t handle, uint32_t of
fset, | 2584 uint16_t ptp_getpartialobject (PTPParams* params, uint32_t handle, uint32_t of
fset, |
2277 uint32_t maxbytes, unsigned char** object, | 2585 uint32_t maxbytes, unsigned char** object, |
2278 uint32_t *len); | 2586 uint32_t *len); |
| 2587 uint16_t ptp_getpartialobject_to_handler (PTPParams* params, uint32_t handle, ui
nt32_t offset, |
| 2588 uint32_t maxbytes, PTPDataHandler *handler); |
| 2589 |
2279 uint16_t ptp_getthumb (PTPParams *params, uint32_t handle, | 2590 uint16_t ptp_getthumb (PTPParams *params, uint32_t handle, |
2280 unsigned char** object, unsigned int *len); | 2591 unsigned char** object, unsigned int *len); |
2281 | 2592 |
2282 uint16_t ptp_deleteobject (PTPParams* params, uint32_t handle, | 2593 uint16_t ptp_deleteobject (PTPParams* params, uint32_t handle, |
2283 uint32_t ofc); | 2594 uint32_t ofc); |
2284 | 2595 |
2285 uint16_t ptp_sendobjectinfo (PTPParams* params, uint32_t* store, | 2596 uint16_t ptp_sendobjectinfo (PTPParams* params, uint32_t* store, |
2286 uint32_t* parenthandle, uint32_t* handle, | 2597 uint32_t* parenthandle, uint32_t* handle, |
2287 PTPObjectInfo* objectinfo); | 2598 PTPObjectInfo* objectinfo); |
2288 /** | 2599 /** |
2289 * ptp_setobjectprotection: | 2600 * ptp_setobjectprotection: |
2290 * params: PTPParams* | 2601 * params: PTPParams* |
2291 * uint16_t newprot - object protection flag | 2602 * uint16_t newprot - object protection flag |
2292 * | 2603 * |
2293 * Set protection of object. | 2604 * Set protection of object. |
2294 * | 2605 * |
2295 * Return values: Some PTP_RC_* code. | 2606 * Return values: Some PTP_RC_* code. |
2296 * | 2607 * |
2297 */ | 2608 */ |
2298 #define ptp_setobjectprotection(params,oid,newprot) ptp_generic_no_data(params,P
TP_OC_SetObjectProtection,2,oid,newprot) | 2609 #define ptp_setobjectprotection(params,oid,newprot) ptp_generic_no_data(params,P
TP_OC_SetObjectProtection,2,oid,newprot) |
2299 uint16_t ptp_sendobject (PTPParams* params, unsigned char* object, | 2610 uint16_t ptp_sendobject (PTPParams* params, unsigned char* object, |
2300 » » » » uint32_t size); | 2611 » » » » uint64_t size); |
2301 uint16_t ptp_sendobject_fromfd (PTPParams* params, int fd, uint32_t size); | 2612 uint16_t ptp_sendobject_fromfd (PTPParams* params, int fd, uint64_t size); |
2302 uint16_t ptp_sendobject_from_handler (PTPParams* params, PTPDataHandler*, uint3
2_t size); | 2613 uint16_t ptp_sendobject_from_handler (PTPParams* params, PTPDataHandler*, uint6
4_t size); |
2303 /** | 2614 /** |
2304 * ptp_initiatecapture: | 2615 * ptp_initiatecapture: |
2305 * params: PTPParams* | 2616 * params: PTPParams* |
2306 * storageid - destination StorageID on Responder | 2617 * storageid - destination StorageID on Responder |
2307 * ofc - object format code | 2618 * ofc - object format code |
2308 * | 2619 * |
2309 * Causes device to initiate the capture of one or more new data objects | 2620 * Causes device to initiate the capture of one or more new data objects |
2310 * according to its current device properties, storing the data into store | 2621 * according to its current device properties, storing the data into store |
2311 * indicated by storageid. If storageid is 0x00000000, the object(s) will | 2622 * indicated by storageid. If storageid is 0x00000000, the object(s) will |
2312 * be stored in a store that is determined by the capturing device. | 2623 * be stored in a store that is determined by the capturing device. |
2313 * The capturing of new data objects is an asynchronous operation. | 2624 * The capturing of new data objects is an asynchronous operation. |
2314 * | 2625 * |
2315 * Return values: Some PTP_RC_* code. | 2626 * Return values: Some PTP_RC_* code. |
2316 **/ | 2627 **/ |
2317 #define ptp_initiatecapture(params,storageid,ofc) ptp_generic_no_data(params,PTP
_OC_InitiateCapture,2,storageid,ofc) | 2628 #define ptp_initiatecapture(params,storageid,ofc) ptp_generic_no_data(params,PTP
_OC_InitiateCapture,2,storageid,ofc) |
2318 | 2629 |
| 2630 #define ptp_initiateopencapture(params,storageid,ofc) ptp_generic_no_data(para
ms,PTP_OC_InitiateOpenCapture,2,storageid,ofc) |
| 2631 #define ptp_terminateopencapture(params,transid) ptp_generic_no_data(para
ms,PTP_OC_TerminateOpenCapture,1,transid) |
| 2632 |
2319 uint16_t ptp_getdevicepropdesc (PTPParams* params, uint16_t propcode, | 2633 uint16_t ptp_getdevicepropdesc (PTPParams* params, uint16_t propcode, |
2320 PTPDevicePropDesc *devicepropertydesc); | 2634 PTPDevicePropDesc *devicepropertydesc); |
| 2635 uint16_t ptp_generic_getdevicepropdesc (PTPParams *params, uint16_t propcode, |
| 2636 PTPDevicePropDesc *dpd); |
2321 uint16_t ptp_getdevicepropvalue (PTPParams* params, uint16_t propcode, | 2637 uint16_t ptp_getdevicepropvalue (PTPParams* params, uint16_t propcode, |
2322 PTPPropertyValue* value, uint16_t datatype); | 2638 PTPPropertyValue* value, uint16_t datatype); |
2323 uint16_t ptp_setdevicepropvalue (PTPParams* params, uint16_t propcode, | 2639 uint16_t ptp_setdevicepropvalue (PTPParams* params, uint16_t propcode, |
2324 PTPPropertyValue* value, uint16_t datatype); | 2640 PTPPropertyValue* value, uint16_t datatype); |
| 2641 uint16_t ptp_generic_setdevicepropvalue (PTPParams* params, uint16_t propcode, |
| 2642 PTPPropertyValue* value, uint16_t datatype); |
2325 uint16_t ptp_getfilesystemmanifest (PTPParams* params, uint32_t storage, | 2643 uint16_t ptp_getfilesystemmanifest (PTPParams* params, uint32_t storage, |
2326 uint32_t objectformatcode, uint32_t associationOH, | 2644 uint32_t objectformatcode, uint32_t associationOH, |
2327 unsigned char** data); | 2645 unsigned char** data); |
2328 | 2646 |
2329 | 2647 |
2330 | 2648 |
2331 uint16_t ptp_check_event (PTPParams *params); | 2649 uint16_t ptp_check_event (PTPParams *params); |
| 2650 uint16_t ptp_wait_event (PTPParams *params); |
| 2651 uint16_t ptp_add_event (PTPParams *params, PTPContainer *evt); |
2332 int ptp_get_one_event (PTPParams *params, PTPContainer *evt); | 2652 int ptp_get_one_event (PTPParams *params, PTPContainer *evt); |
2333 uint16_t ptp_check_eos_events (PTPParams *params); | 2653 uint16_t ptp_check_eos_events (PTPParams *params); |
2334 int ptp_get_one_eos_event (PTPParams *params, PTPCanon_changes_entry *entry); | 2654 int ptp_get_one_eos_event (PTPParams *params, PTPCanon_changes_entry *entry); |
2335 | 2655 |
2336 | 2656 |
2337 /* Microsoft MTP extensions */ | 2657 /* Microsoft MTP extensions */ |
2338 uint16_t ptp_mtp_getobjectpropdesc (PTPParams* params, uint16_t opc, uint16_t of
c, | 2658 uint16_t ptp_mtp_getobjectpropdesc (PTPParams* params, uint16_t opc, uint16_t of
c, |
2339 PTPObjectPropDesc *objectpropertydesc); | 2659 PTPObjectPropDesc *objectpropertydesc); |
2340 uint16_t ptp_mtp_getobjectpropvalue (PTPParams* params, uint32_t oid, uint16_t o
pc, | 2660 uint16_t ptp_mtp_getobjectpropvalue (PTPParams* params, uint32_t oid, uint16_t o
pc, |
2341 PTPPropertyValue *value, uint16_t datatype); | 2661 PTPPropertyValue *value, uint16_t datatype); |
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2519 /** | 2839 /** |
2520 * ptp_canon_eos_requestdevicepropvalue: | 2840 * ptp_canon_eos_requestdevicepropvalue: |
2521 * | 2841 * |
2522 * This operation sends a "ping" style message to the camera. | 2842 * This operation sends a "ping" style message to the camera. |
2523 * | 2843 * |
2524 * params: PTPParams* | 2844 * params: PTPParams* |
2525 * | 2845 * |
2526 * Return values: Some PTP_RC_* code. | 2846 * Return values: Some PTP_RC_* code. |
2527 * | 2847 * |
2528 **/ | 2848 **/ |
| 2849 #define CANON_EOS_OLC_BUTTON 0x0001 |
| 2850 #define CANON_EOS_OLC_SHUTTERSPEED 0x0002 |
| 2851 #define CANON_EOS_OLC_APERTURE 0x0004 |
| 2852 #define CANON_EOS_OLC_ISO 0x0008 |
| 2853 |
| 2854 #define ptp_canon_eos_setrequestolcinfogroup(params,igmask) ptp_generic_no_data(
params,PTP_OC_CANON_EOS_SetRequestOLCInfoGroup,1,igmask) |
2529 #define ptp_canon_eos_requestdevicepropvalue(params,prop) ptp_generic_no_data(pa
rams,PTP_OC_CANON_EOS_RequestDevicePropValue,1,prop) | 2855 #define ptp_canon_eos_requestdevicepropvalue(params,prop) ptp_generic_no_data(pa
rams,PTP_OC_CANON_EOS_RequestDevicePropValue,1,prop) |
2530 uint16_t ptp_canon_eos_capture (PTPParams* params, uint32_t *result); | 2856 uint16_t ptp_canon_eos_capture (PTPParams* params, uint32_t *result); |
2531 uint16_t ptp_canon_eos_getevent (PTPParams* params, PTPCanon_changes_entry **ent
ries, int *nrofentries); | 2857 uint16_t ptp_canon_eos_getevent (PTPParams* params, PTPCanon_changes_entry **ent
ries, int *nrofentries); |
2532 uint16_t ptp_canon_getpartialobject (PTPParams* params, uint32_t handle, | 2858 uint16_t ptp_canon_getpartialobject (PTPParams* params, uint32_t handle, |
2533 uint32_t offset, uint32_t size, | 2859 uint32_t offset, uint32_t size, |
2534 uint32_t pos, unsigned char** block, | 2860 uint32_t pos, unsigned char** block, |
2535 uint32_t* readnum); | 2861 uint32_t* readnum); |
2536 uint16_t ptp_canon_getviewfinderimage (PTPParams* params, unsigned char** image, | 2862 uint16_t ptp_canon_getviewfinderimage (PTPParams* params, unsigned char** image, |
2537 uint32_t* size); | 2863 uint32_t* size); |
2538 uint16_t ptp_canon_getchanges (PTPParams* params, uint16_t** props, | 2864 uint16_t ptp_canon_getchanges (PTPParams* params, uint16_t** props, |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2635 #if 0 | 2961 #if 0 |
2636 uint16_t ptp_canon_eos_setdevicepropvalue (PTPParams* params, uint16_t propcode, | 2962 uint16_t ptp_canon_eos_setdevicepropvalue (PTPParams* params, uint16_t propcode, |
2637 PTPPropertyValue* value, uint16_t datatype); | 2963 PTPPropertyValue* value, uint16_t datatype); |
2638 #endif | 2964 #endif |
2639 uint16_t ptp_nikon_get_vendorpropcodes (PTPParams* params, uint16_t **props, uns
igned int *size); | 2965 uint16_t ptp_nikon_get_vendorpropcodes (PTPParams* params, uint16_t **props, uns
igned int *size); |
2640 uint16_t ptp_nikon_curve_download (PTPParams* params, | 2966 uint16_t ptp_nikon_curve_download (PTPParams* params, |
2641 unsigned char **data, unsigned int *size); | 2967 unsigned char **data, unsigned int *size); |
2642 uint16_t ptp_nikon_getptpipinfo (PTPParams* params, unsigned char **data, unsign
ed int *size); | 2968 uint16_t ptp_nikon_getptpipinfo (PTPParams* params, unsigned char **data, unsign
ed int *size); |
2643 uint16_t ptp_nikon_getwifiprofilelist (PTPParams* params); | 2969 uint16_t ptp_nikon_getwifiprofilelist (PTPParams* params); |
2644 uint16_t ptp_nikon_writewifiprofile (PTPParams* params, PTPNIKONWifiProfile* pro
file); | 2970 uint16_t ptp_nikon_writewifiprofile (PTPParams* params, PTPNIKONWifiProfile* pro
file); |
| 2971 |
| 2972 uint16_t ptp_sony_sdioconnect (PTPParams* params, uint32_t p1, uint32_t p2, uint
32_t p3); |
| 2973 uint16_t ptp_sony_get_vendorpropcodes (PTPParams* params, uint16_t **props, unsi
gned int *size); |
| 2974 uint16_t ptp_sony_getdevicepropdesc (PTPParams* params, uint16_t propcode, |
| 2975 PTPDevicePropDesc *devicepropertydesc); |
| 2976 uint16_t ptp_sony_getalldevicepropdesc (PTPParams* params); |
| 2977 uint16_t ptp_sony_setdevicecontrolvaluea (PTPParams* params, uint16_t propcode, |
| 2978 PTPPropertyValue* value, uint16_t datatype); |
| 2979 uint16_t ptp_sony_setdevicecontrolvalueb (PTPParams* params, uint16_t propcode, |
| 2980 PTPPropertyValue* value, uint16_t datatype); |
| 2981 uint16_t ptp_sony_9280 (PTPParams* params, uint32_t additional, uint32_t data1,
uint32_t data2, uint32_t data3, uint32_t data4, uint8_t x, uint8_t y); |
| 2982 uint16_t ptp_sony_9281 (PTPParams* params, uint32_t param1); |
2645 /** | 2983 /** |
2646 * ptp_nikon_deletewifiprofile: | 2984 * ptp_nikon_deletewifiprofile: |
2647 * | 2985 * |
2648 * This command deletes a wifi profile. | 2986 * This command deletes a wifi profile. |
2649 * | 2987 * |
2650 * params: PTPParams* | 2988 * params: PTPParams* |
2651 * unsigned int profilenr - profile number | 2989 * unsigned int profilenr - profile number |
2652 * | 2990 * |
2653 * Return values: Some PTP_RC_* code. | 2991 * Return values: Some PTP_RC_* code. |
2654 * | 2992 * |
2655 **/ | 2993 **/ |
2656 #define ptp_nikon_deletewifiprofile(params,profilenr) ptp_generic_no_data(params
,PTP_OC_NIKON_DeleteProfile,1,profilenr) | 2994 #define ptp_nikon_deletewifiprofile(params,profilenr) ptp_generic_no_data(params
,PTP_OC_NIKON_DeleteProfile,1,profilenr) |
2657 /** | 2995 /** |
2658 * ptp_nikon_setcontrolmode: | 2996 * ptp_nikon_setcontrolmode: |
2659 * | 2997 * |
2660 * This command can switch the camera to full PC control mode. | 2998 * This command can switch the camera to full PC control mode. |
2661 * | 2999 * |
2662 * params: PTPParams* | 3000 * params: PTPParams* |
2663 * uint32_t mode - mode | 3001 * uint32_t mode - mode |
2664 * | 3002 * |
2665 * Return values: Some PTP_RC_* code. | 3003 * Return values: Some PTP_RC_* code. |
2666 * | 3004 * |
2667 **/ | 3005 **/ |
2668 #define ptp_nikon_setcontrolmode(params,mode) ptp_generic_no_data(params,PTP_OC_
NIKON_SetControlMode,1,mode) | 3006 #define ptp_nikon_setcontrolmode(params,mode) ptp_generic_no_data(params,PTP_OC_
NIKON_SetControlMode,1,mode) |
2669 /** | 3007 /** |
| 3008 * ptp_nikon_terminatecapture: |
| 3009 * |
| 3010 * This command appears to terminate a longer capture |
| 3011 * |
| 3012 * params: PTPParams* |
| 3013 * uint32_t a |
| 3014 * uint32_t b |
| 3015 * |
| 3016 * Return values: Some PTP_RC_* code. |
| 3017 * |
| 3018 **/ |
| 3019 #define ptp_nikon_terminatecapture(params,p1,p2) ptp_generic_no_data(params,PTP_
OC_NIKON_TerminateCapture,2,p1,p2) |
| 3020 /** |
2670 * ptp_nikon_afdrive: | 3021 * ptp_nikon_afdrive: |
2671 * | 3022 * |
2672 * This command runs (drives) the lens autofocus. | 3023 * This command runs (drives) the lens autofocus. |
2673 * | 3024 * |
2674 * params: PTPParams* | 3025 * params: PTPParams* |
2675 * | 3026 * |
2676 * Return values: Some PTP_RC_* code. | 3027 * Return values: Some PTP_RC_* code. |
2677 * | 3028 * |
2678 **/ | 3029 **/ |
2679 #define ptp_nikon_afdrive(params) ptp_generic_no_data(params,PTP_OC_NIKON_AfDriv
e,0) | 3030 #define ptp_nikon_afdrive(params) ptp_generic_no_data(params,PTP_OC_NIKON_AfDriv
e,0) |
2680 /** | 3031 /** |
| 3032 * ptp_nikon_changeafarea: |
| 3033 * |
| 3034 * This command starts movie capture (to card) |
| 3035 * |
| 3036 * params: PTPParams* |
| 3037 * x: x coordinate |
| 3038 * y: y coordinate |
| 3039 * |
| 3040 * Return values: Some PTP_RC_* code. |
| 3041 * |
| 3042 **/ |
| 3043 #define ptp_nikon_changeafarea(params,x,y) ptp_generic_no_data(params,PTP_OC_NIK
ON_ChangeAfArea,2,x,y) |
| 3044 /** |
| 3045 * ptp_nikon_startmovie: |
| 3046 * |
| 3047 * This command starts movie capture (to card) |
| 3048 * |
| 3049 * params: PTPParams* |
| 3050 * |
| 3051 * Return values: Some PTP_RC_* code. |
| 3052 * |
| 3053 **/ |
| 3054 #define ptp_nikon_startmovie(params) ptp_generic_no_data(params,PTP_OC_NIKON_Sta
rtMovieRecInCard,0) |
| 3055 /** |
| 3056 * ptp_nikon_stopmovie: |
| 3057 * |
| 3058 * This command stops movie capture (to card) |
| 3059 * |
| 3060 * params: PTPParams* |
| 3061 * |
| 3062 * Return values: Some PTP_RC_* code. |
| 3063 * |
| 3064 **/ |
| 3065 #define ptp_nikon_stopmovie(params) ptp_generic_no_data(params,PTP_OC_NIKON_EndM
ovieRec,0) |
| 3066 /** |
2681 * ptp_canon_eos_afdrive: | 3067 * ptp_canon_eos_afdrive: |
2682 * | 3068 * |
2683 * This command runs (drives) the lens autofocus. | 3069 * This command runs (drives) the lens autofocus. |
2684 * | 3070 * |
2685 * params: PTPParams* | 3071 * params: PTPParams* |
2686 * | 3072 * |
2687 * Return values: Some PTP_RC_* code. | 3073 * Return values: Some PTP_RC_* code. |
2688 * | 3074 * |
2689 **/ | 3075 **/ |
2690 #define ptp_canon_eos_afdrive(params) ptp_generic_no_data(params,PTP_OC_CANON_EO
S_DoAf,0) | 3076 #define ptp_canon_eos_afdrive(params) ptp_generic_no_data(params,PTP_OC_CANON_EO
S_DoAf,0) |
2691 /** | 3077 /** |
| 3078 * ptp_canon_eos_afcancel: |
| 3079 * |
| 3080 * This command cancels the lens autofocus. |
| 3081 * |
| 3082 * params: PTPParams* |
| 3083 * |
| 3084 * Return values: Some PTP_RC_* code. |
| 3085 * |
| 3086 **/ |
| 3087 #define ptp_canon_eos_afcancel(params) ptp_generic_no_data(params,PTP_OC_CANON_E
OS_AfCancel,0) |
| 3088 /** |
2692 * ptp_canon_eos_zoom: | 3089 * ptp_canon_eos_zoom: |
2693 * | 3090 * |
2694 * This command runs (drives) the lens autofocus. | 3091 * This command runs (drives) the lens autofocus. |
2695 * | 3092 * |
2696 * params: PTPParams* | 3093 * params: PTPParams* |
2697 * params: arg1 unknown | 3094 * params: arg1 unknown |
2698 * | 3095 * |
2699 * Return values: Some PTP_RC_* code. | 3096 * Return values: Some PTP_RC_* code. |
2700 * | 3097 * |
2701 **/ | 3098 **/ |
2702 #define ptp_canon_eos_zoom(params,x) ptp_generic_no_data(params,PTP_OC_CANON_EOS
_Zoom,1,x) | 3099 #define ptp_canon_eos_zoom(params,x) ptp_generic_no_data(params,PTP_OC_CANON_EOS
_Zoom,1,x) |
2703 #define ptp_canon_eos_zoomposition(params,x,y) ptp_generic_no_data(params,PTP_OC
_CANON_EOS_ZoomPosition,2,x,y) | 3100 #define ptp_canon_eos_zoomposition(params,x,y) ptp_generic_no_data(params,PTP_OC
_CANON_EOS_ZoomPosition,2,x,y) |
2704 | 3101 |
2705 #define ptp_canon_eos_remotereleaseon(params,x) ptp_generic_no_data(params,PTP_O
C_CANON_EOS_RemoteReleaseOn,1,x) | 3102 #define ptp_canon_eos_remotereleaseon(params,x,y) ptp_generic_no_data(params,PTP
_OC_CANON_EOS_RemoteReleaseOn,2,x,y) |
2706 #define ptp_canon_eos_remotereleaseoff(params,x) ptp_generic_no_data(params,PTP_
OC_CANON_EOS_RemoteReleaseOff,1,x) | 3103 #define ptp_canon_eos_remotereleaseoff(params,x) ptp_generic_no_data(params,PTP_
OC_CANON_EOS_RemoteReleaseOff,1,x) |
2707 /** | 3104 /** |
2708 * ptp_nikon_mfdrive: | 3105 * ptp_nikon_mfdrive: |
2709 * | 3106 * |
2710 * This command runs (drives) the lens focus manually. | 3107 * This command runs (drives) the lens focus manually. |
2711 * | 3108 * |
2712 * params: PTPParams* | 3109 * params: PTPParams* |
2713 * flag: 0x1 for (no limit - closest), 0x2 for (closest - no limit) | 3110 * flag: 0x1 for (no limit - closest), 0x2 for (closest - no limit) |
2714 * amount: amount of steps | 3111 * amount: amount of steps |
2715 * | 3112 * |
(...skipping 13 matching lines...) Expand all Loading... |
2729 * Return values: Some PTP_RC_* code. | 3126 * Return values: Some PTP_RC_* code. |
2730 * | 3127 * |
2731 **/ | 3128 **/ |
2732 #define ptp_canon_eos_drivelens(params,amount) ptp_generic_no_data(params,PTP_OC
_CANON_EOS_DriveLens,1,amount) | 3129 #define ptp_canon_eos_drivelens(params,amount) ptp_generic_no_data(params,PTP_OC
_CANON_EOS_DriveLens,1,amount) |
2733 /** | 3130 /** |
2734 * ptp_nikon_capture: | 3131 * ptp_nikon_capture: |
2735 * | 3132 * |
2736 * This command captures a picture on the Nikon. | 3133 * This command captures a picture on the Nikon. |
2737 * | 3134 * |
2738 * params: PTPParams* | 3135 * params: PTPParams* |
2739 * uint32_t x - unknown parameter. seen to be -1. | 3136 * uint32_t x: unknown parameter. seen to be -1. |
2740 * | 3137 * |
2741 * Return values: Some PTP_RC_* code. | 3138 * Return values: Some PTP_RC_* code. |
2742 * | 3139 * |
2743 **/ | 3140 **/ |
2744 #define ptp_nikon_capture(params,x) ptp_generic_no_data(params,PTP_OC_NIKON_Capt
ure,1,x) | 3141 #define ptp_nikon_capture(params,x) ptp_generic_no_data(params,PTP_OC_NIKON_Capt
ure,1,x) |
| 3142 |
| 3143 /** |
| 3144 * ptp_nikon_capture2: |
| 3145 * |
| 3146 * This command captures a picture on the Nikon. |
| 3147 * |
| 3148 * params: PTPParams* |
| 3149 * af: autofocus before capture (1 yes , 0 no) |
| 3150 * target: sdram 1, card 0 |
| 3151 * |
| 3152 * Return values: Some PTP_RC_* code. |
| 3153 * 2 params: |
| 3154 * 0xffffffff == No AF before, 0xfffffffe == AF before capture |
| 3155 * sdram=1, card=0 |
| 3156 */ |
| 3157 #define ptp_nikon_capture2(params,af,target) ptp_generic_no_data(params,PTP_OC_N
IKON_InitiateCaptureRecInMedia,2,af?0xfffffffe:0xffffffff,target) |
2745 /** | 3158 /** |
2746 * ptp_nikon_capture_sdram: | 3159 * ptp_nikon_capture_sdram: |
2747 * | 3160 * |
2748 * This command captures a picture on the Nikon. | 3161 * This command captures a picture on the Nikon. |
2749 * | 3162 * |
2750 * params: PTPParams* | 3163 * params: PTPParams* |
2751 * | 3164 * |
2752 * Return values: Some PTP_RC_* code. | 3165 * Return values: Some PTP_RC_* code. |
2753 * | 3166 * |
2754 **/ | 3167 **/ |
(...skipping 27 matching lines...) Expand all Loading... |
2782 * ptp_nikon_end_liveview: | 3195 * ptp_nikon_end_liveview: |
2783 * | 3196 * |
2784 * This command ends LiveView mode of newer Nikons DSLRs. | 3197 * This command ends LiveView mode of newer Nikons DSLRs. |
2785 * | 3198 * |
2786 * params: PTPParams* | 3199 * params: PTPParams* |
2787 * | 3200 * |
2788 * Return values: Some PTP_RC_* code. | 3201 * Return values: Some PTP_RC_* code. |
2789 * | 3202 * |
2790 **/ | 3203 **/ |
2791 #define ptp_nikon_end_liveview(params) ptp_generic_no_data(params,PTP_OC_NIKON_E
ndLiveView,0) | 3204 #define ptp_nikon_end_liveview(params) ptp_generic_no_data(params,PTP_OC_NIKON_E
ndLiveView,0) |
2792 uint16_t ptp_nikon_check_event (PTPParams* params, PTPContainer **evt, int *evtc
nt); | 3205 uint16_t ptp_nikon_check_event (PTPParams* params, PTPContainer **evt, unsigned
int *evtcnt); |
2793 uint16_t ptp_nikon_getfileinfoinblock (PTPParams* params, uint32_t p1, uint32_t
p2, uint32_t p3, | 3206 uint16_t ptp_nikon_getfileinfoinblock (PTPParams* params, uint32_t p1, uint32_t
p2, uint32_t p3, |
2794 unsigned char **data, unsigned int *size
); | 3207 unsigned char **data, unsigned int *size
); |
2795 /** | 3208 /** |
2796 * ptp_nikon_device_ready: | 3209 * ptp_nikon_device_ready: |
2797 * | 3210 * |
2798 * This command checks if the device is ready. Used after | 3211 * This command checks if the device is ready. Used after |
2799 * a capture. | 3212 * a capture. |
2800 * | 3213 * |
2801 * params: PTPParams* | 3214 * params: PTPParams* |
2802 * | 3215 * |
2803 * Return values: Some PTP_RC_* code. | 3216 * Return values: Some PTP_RC_* code. |
2804 * | 3217 * |
2805 **/ | 3218 **/ |
2806 #define ptp_nikon_device_ready(params) ptp_generic_no_data (params, PTP_OC_NIKON
_DeviceReady, 0) | 3219 #define ptp_nikon_device_ready(params) ptp_generic_no_data (params, PTP_OC_NIKON
_DeviceReady, 0) |
2807 uint16_t ptp_mtp_getobjectpropssupported (PTPParams* params, uint16_t ofc, uint3
2_t *propnum, uint16_t **props); | 3220 uint16_t ptp_mtp_getobjectpropssupported (PTPParams* params, uint16_t ofc, uint3
2_t *propnum, uint16_t **props); |
2808 | 3221 |
| 3222 |
| 3223 /* Android MTP Extensions */ |
| 3224 uint16_t ptp_android_getpartialobject64 (PTPParams* params, uint32_t handle, uin
t64_t offset, |
| 3225 uint32_t maxbytes, unsigned char** objec
t, |
| 3226 uint32_t *len); |
| 3227 #define ptp_android_begineditobject(params,handle) ptp_generic_no_data (params,
PTP_OC_ANDROID_BeginEditObject, 1, handle) |
| 3228 #define ptp_android_truncate(params,handle,offset) ptp_generic_no_data (params,
PTP_OC_ANDROID_TruncateObject, 3, handle, (offset & 0xFFFFFFFF), (offset >> 32)) |
| 3229 uint16_t ptp_android_sendpartialobject (PTPParams *params, uint32_t handle, |
| 3230 uint64_t offset, unsigned char *object,
uint32_t len); |
| 3231 #define ptp_android_endeditobject(params,handle) ptp_generic_no_data (params, PT
P_OC_ANDROID_EndEditObject, 1, handle) |
| 3232 |
| 3233 uint16_t ptp_olympus_getdeviceinfo (PTPParams*, PTPDeviceInfo*); |
| 3234 #define ptp_olympus_setcameracontrolmode(params,p1) ptp_generic_no_data (params,
PTP_OC_OLYMPUS_SetCameraControlMode, 1, p1) |
| 3235 uint16_t ptp_olympus_opensession (PTPParams*, unsigned char**, unsigned int *); |
| 3236 #define ptp_olympus_capture(params,p1) ptp_generic_no_data (params, PTP_OC_OLYMP
US_Capture, 1, p1) |
| 3237 uint16_t ptp_olympus_getcameraid (PTPParams*, unsigned char**, unsigned int *); |
| 3238 |
2809 /* Non PTP protocol functions */ | 3239 /* Non PTP protocol functions */ |
2810 static inline int | 3240 static inline int |
2811 ptp_operation_issupported(PTPParams* params, uint16_t operation) | 3241 ptp_operation_issupported(PTPParams* params, uint16_t operation) |
2812 { | 3242 { |
2813 uint32_t i=0; | 3243 uint32_t i=0; |
2814 | 3244 |
2815 for (;i<params->deviceinfo.OperationsSupported_len;i++) { | 3245 for (;i<params->deviceinfo.OperationsSupported_len;i++) { |
2816 if (params->deviceinfo.OperationsSupported[i]==operation) | 3246 if (params->deviceinfo.OperationsSupported[i]==operation) |
2817 return 1; | 3247 return 1; |
2818 } | 3248 } |
2819 return 0; | 3249 return 0; |
2820 } | 3250 } |
2821 | 3251 |
2822 int ptp_event_issupported (PTPParams* params, uint16_t event); | 3252 int ptp_event_issupported (PTPParams* params, uint16_t event); |
2823 int ptp_property_issupported (PTPParams* params, uint16_t property); | 3253 int ptp_property_issupported (PTPParams* params, uint16_t property); |
2824 | 3254 |
2825 void ptp_free_devicepropdesc (PTPDevicePropDesc* dpd); | |
2826 void ptp_free_devicepropvalue (uint16_t dt, PTPPropertyValue* dpd); | |
2827 void ptp_free_objectpropdesc (PTPObjectPropDesc* dpd); | |
2828 void ptp_free_params (PTPParams *params); | 3255 void ptp_free_params (PTPParams *params); |
| 3256 void ptp_free_objectpropdesc (PTPObjectPropDesc*); |
| 3257 void ptp_free_devicepropdesc (PTPDevicePropDesc*); |
| 3258 void ptp_free_devicepropvalue (uint16_t, PTPPropertyValue*); |
2829 void ptp_free_objectinfo (PTPObjectInfo *oi); | 3259 void ptp_free_objectinfo (PTPObjectInfo *oi); |
2830 void ptp_free_object (PTPObject *oi); | 3260 void ptp_free_object (PTPObject *oi); |
2831 | 3261 |
2832 const char *ptp_strerror(uint16_t error); | 3262 const char *ptp_strerror» (uint16_t ret, uint16_t vendor); |
2833 void ptp_perror»» » (PTPParams* params, uint16_t error); | |
2834 void ptp_debug (PTPParams *params, const char *format, ...); | 3263 void ptp_debug (PTPParams *params, const char *format, ...); |
2835 void ptp_error (PTPParams *params, const char *format, ...); | 3264 void ptp_error (PTPParams *params, const char *format, ...); |
2836 | 3265 |
2837 | 3266 |
2838 const char* | 3267 const char* ptp_get_property_description(PTPParams* params, uint16_t dpc); |
2839 ptp_get_property_description(PTPParams* params, uint16_t dpc); | 3268 |
| 3269 const char* ptp_get_opcode_name(PTPParams* params, uint16_t opcode); |
2840 | 3270 |
2841 int | 3271 int |
2842 ptp_render_property_value(PTPParams* params, uint16_t dpc, | 3272 ptp_render_property_value(PTPParams* params, uint16_t dpc, |
2843 PTPDevicePropDesc *dpd, int length, char *out); | 3273 PTPDevicePropDesc *dpd, unsigned int length, char *out
); |
2844 int ptp_render_ofc(PTPParams* params, uint16_t ofc, int spaceleft, char *txt); | 3274 int ptp_render_ofc(PTPParams* params, uint16_t ofc, int spaceleft, char *txt); |
2845 int ptp_render_opcode(PTPParams* params, uint16_t opcode, int spaceleft, char *t
xt); | |
2846 int ptp_render_mtp_propname(uint16_t propid, int spaceleft, char *txt); | 3275 int ptp_render_mtp_propname(uint16_t propid, int spaceleft, char *txt); |
2847 MTPProperties *ptp_get_new_object_prop_entry(MTPProperties **props, int *nrofpro
ps); | 3276 MTPProperties *ptp_get_new_object_prop_entry(MTPProperties **props, int *nrofpro
ps); |
2848 void ptp_destroy_object_prop(MTPProperties *prop); | 3277 void ptp_destroy_object_prop(MTPProperties *prop); |
2849 void ptp_destroy_object_prop_list(MTPProperties *props, int nrofprops); | 3278 void ptp_destroy_object_prop_list(MTPProperties *props, int nrofprops); |
2850 MTPProperties *ptp_find_object_prop_in_cache(PTPParams *params, uint32_t const h
andle, uint32_t const attribute_id); | 3279 MTPProperties *ptp_find_object_prop_in_cache(PTPParams *params, uint32_t const h
andle, uint32_t const attribute_id); |
2851 void ptp_remove_object_from_cache(PTPParams *params, uint32_t handle); | 3280 uint16_t ptp_remove_object_from_cache(PTPParams *params, uint32_t handle); |
2852 uint16_t ptp_add_object_to_cache(PTPParams *params, uint32_t handle); | 3281 uint16_t ptp_add_object_to_cache(PTPParams *params, uint32_t handle); |
2853 uint16_t ptp_object_want (PTPParams *, uint32_t handle, int want, PTPObject**ret
ob); | 3282 uint16_t ptp_object_want (PTPParams *, uint32_t handle, unsigned int want, PTPOb
ject**retob); |
2854 void ptp_objects_sort (PTPParams *); | 3283 void ptp_objects_sort (PTPParams *); |
2855 uint16_t ptp_object_find (PTPParams *params, uint32_t handle, PTPObject **retob)
; | 3284 uint16_t ptp_object_find (PTPParams *params, uint32_t handle, PTPObject **retob)
; |
2856 uint16_t ptp_object_find_or_insert (PTPParams *params, uint32_t handle, PTPObjec
t **retob); | 3285 uint16_t ptp_object_find_or_insert (PTPParams *params, uint32_t handle, PTPObjec
t **retob); |
2857 /* ptpip.c */ | 3286 /* ptpip.c */ |
2858 void ptp_nikon_getptpipguid (unsigned char* guid); | 3287 void ptp_nikon_getptpipguid (unsigned char* guid); |
2859 | 3288 |
2860 enum PTP_CHDK_Command { | 3289 /* CHDK specifics */ |
2861 PTP_CHDK_Shutdown = 0, /* param2 is 0 (hard), 1 (soft), 2 (reboot) or 3 (re
boot fw update) | |
2862 if param2 == 3, then filename of fw update is sen
d as data (empty for default) */ | |
2863 PTP_CHDK_GetMemory, /* param2 is base address (or 0 for live image buffe
r, 1 for bitmap buffer) | |
2864 param3 is size (in bytes) | |
2865 return data is memory block */ | |
2866 PTP_CHDK_SetMemoryLong, /* param2 is address | |
2867 param3 is value */ | |
2868 PTP_CHDK_CallFunction, /* data is array of function pointer and (long) argu
ments (max: 10 args) | |
2869 return param1 is return value */ | |
2870 PTP_CHDK_GetPropCase, /* param2 is base id | |
2871 param3 is number of properties | |
2872 return data is array of longs */ | |
2873 PTP_CHDK_GetParamData, /* param2 is base id | |
2874 param3 is number of parameters | |
2875 return data is sequence of strings prefixed by th
eir length (as long) */ | |
2876 PTP_CHDK_TempData, /* data is data to be stored for later */ | |
2877 PTP_CHDK_UploadFile, /* data is 4-byte length of filename, followed by fi
lename and contents */ | |
2878 PTP_CHDK_DownloadFile, /* preceded by PTP_CHDK_TempData with filename | |
2879 return data are file contents */ | |
2880 PTP_CHDK_SwitchMode, /* param2 is 0 (playback) or 1 (record) */ | |
2881 PTP_CHDK_ExecuteLUA, /* data is script to be executed */ | |
2882 PTP_CHDK_GetVideoSettings, | |
2883 PTP_CHDK_GetScriptOutput, /* return script output in ASCIIZ */ | |
2884 PTP_CHDK_OpenDir, /* open directory listing, data is directory name */ | |
2885 PTP_CHDK_ReadDir, /* return data is next file info */ | |
2886 PTP_CHDK_CloseDir, /* close directory listing */ | |
2887 PTP_CHDK_GetShootingModesList, /* not used */ | |
2888 PTP_CHDK_StartDownloadFile, | |
2889 PTP_CHDK_ResumeDownloadFile, | |
2890 PTP_CHDK_EndDownloadFile, | |
2891 }; | |
2892 | |
2893 #define PTP_OC_CHDK 0x9999 | 3290 #define PTP_OC_CHDK 0x9999 |
2894 typedef struct tagptp_chdk_videosettings { | 3291 typedef struct tagptp_chdk_videosettings { |
2895 long live_image_buffer_width; | 3292 long live_image_buffer_width; |
2896 long live_image_width; | 3293 long live_image_width; |
2897 long live_image_height; | 3294 long live_image_height; |
2898 long bitmap_buffer_width; | 3295 long bitmap_buffer_width; |
2899 long bitmap_width; | 3296 long bitmap_width; |
2900 long bitmap_height; | 3297 long bitmap_height; |
2901 unsigned palette[16]; | 3298 unsigned palette[16]; |
2902 } ptp_chdk_videosettings; | 3299 } ptp_chdk_videosettings; |
2903 | 3300 |
2904 #define ptp_chdk_shutdown_hard(params) ptp_generic_no_data(params,PTP_OC_CHDK,2,
PTP_CHDK_Shutdown,0) | 3301 /* Nafraf: Test this!!!*/ |
2905 #define ptp_chdk_shutdown_soft(params) ptp_generic_no_data(params,PTP_OC_CHDK,2,
PTP_CHDK_Shutdown,1) | |
2906 #define ptp_chdk_reboot(params) ptp_generic_no_data(params,PTP_OC_CHDK,2,PTP_CHD
K_Shutdown,2) | |
2907 #define ptp_chdk_reboot_fw_update(params) ptp_generic_no_data(params,PTP_OC_CHDK
,2,PTP_CHDK_Shutdown,3) | |
2908 uint16_t ptp_chdk_get_memory(PTPParams* params, int start, int num, unsigned cha
r**); | |
2909 #define ptp_chdk_set_memory_long(params,addr,val) ptp_generic_no_data(params,PTP
_OC_CHDK,3,PTP_CHDK_SetMemoryLong,addr,val) | |
2910 uint16_t ptp_chdk_call(PTPParams* params, int *args, int size, int *ret); | |
2911 uint16_t ptp_chdk_get_propcase(PTPParams* params, int start, int num, int* ints)
; | |
2912 uint16_t ptp_chdk_get_paramdata(PTPParams* params, int start, int num, unsigned
char** x); | |
2913 #define ptp_chdk_switch_mode(params,mode) ptp_generic_no_data(params,PTP_OC_CHDK
,2,PTP_CHDK_SwitchMode,mode) | 3302 #define ptp_chdk_switch_mode(params,mode) ptp_generic_no_data(params,PTP_OC_CHDK
,2,PTP_CHDK_SwitchMode,mode) |
2914 uint16_t ptp_chdk_exec_lua(PTPParams *params, char *script, uint32_t* ret); | 3303 |
2915 uint16_t ptp_chdk_get_script_output(PTPParams* params, char **output ); | 3304 /* include CHDK ptp protocol definitions from a CHDK source tree */ |
2916 uint16_t ptp_chdk_get_video_settings(PTPParams* params, ptp_chdk_videosettings*
vsettings); | 3305 #include "chdk_ptp.h" |
| 3306 #if (PTP_CHDK_VERSION_MAJOR < 2 || (PTP_CHDK_VERSION_MAJOR == 2 && PTP_CHDK_VERS
ION_MINOR < 5)) |
| 3307 #error your chdk headers are too old, unset CHDK_SRC_DIR in config.mk |
| 3308 #endif |
| 3309 #include "chdk_live_view.h" |
| 3310 |
| 3311 /* the following happens to match what is used in CHDK, but is not part of the p
rotocol */ |
| 3312 typedef struct { |
| 3313 unsigned size; |
| 3314 unsigned script_id; /* id of script message is to/from */ |
| 3315 unsigned type; |
| 3316 unsigned subtype; |
| 3317 char data[]; |
| 3318 } ptp_chdk_script_msg; |
| 3319 |
| 3320 /* |
| 3321 chunk for remote capture |
| 3322 */ |
| 3323 typedef struct { |
| 3324 » uint32_t size; /* length of data */ |
| 3325 » int last; /* is it the last chunk? */ |
| 3326 » uint32_t offset; /* offset within file, or -1 */ |
| 3327 » unsigned char *data; /* data, must be free'd by caller when done */ |
| 3328 } ptp_chdk_rc_chunk; |
| 3329 |
| 3330 |
| 3331 uint16_t ptp_chdk_get_memory(PTPParams* params, int start, int num, unsigned cha
r **); |
| 3332 uint16_t ptp_chdk_set_memory_long(PTPParams* params, int addr, int val); |
| 3333 int ptp_chdk_upload(PTPParams* params, char *local_fn, char *remote_fn); |
| 3334 uint16_t ptp_chdk_download(PTPParams* params, char *remote_fn, PTPDataHandler *h
andler); |
| 3335 |
| 3336 /* remote capture */ |
| 3337 uint16_t ptp_chdk_rcisready(PTPParams* params, int *isready,int *imgnum); |
| 3338 uint16_t ptp_chdk_rcgetchunk(PTPParams* params,int fmt, ptp_chdk_rc_chunk *chunk
); |
| 3339 |
| 3340 uint16_t ptp_chdk_exec_lua(PTPParams* params, char *script, int flags, int *scri
pt_id,int *status); |
| 3341 uint16_t ptp_chdk_get_version(PTPParams* params, int *major, int *minor); |
| 3342 uint16_t ptp_chdk_get_script_support(PTPParams* params, unsigned *status); |
| 3343 uint16_t ptp_chdk_get_script_status(PTPParams* params, unsigned *status); |
| 3344 uint16_t ptp_chdk_write_script_msg(PTPParams* params, char *data, unsigned size,
int target_script_id, int *status); |
| 3345 uint16_t ptp_chdk_read_script_msg(PTPParams* params, ptp_chdk_script_msg **msg); |
| 3346 uint16_t ptp_chdk_get_live_data(PTPParams* params, unsigned flags, unsigned char
**data, unsigned int *data_size); |
| 3347 uint16_t ptp_chdk_call_function(PTPParams* params, int *args, int size, int *ret
); |
| 3348 |
| 3349 /*uint16_t ptp_chdk_get_script_output(PTPParams* params, char **output ); */ |
| 3350 /*uint16_t ptp_chdk_get_video_settings(PTPParams* params, ptp_chdk_videosettings
* vsettings);*/ |
2917 | 3351 |
2918 #ifdef __cplusplus | 3352 #ifdef __cplusplus |
2919 } | 3353 } |
2920 #endif /* __cplusplus */ | 3354 #endif /* __cplusplus */ |
2921 | 3355 |
2922 #endif /* __PTP_H__ */ | 3356 #endif /* __PTP_H__ */ |
OLD | NEW |