• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1  /*
2   * Copyright (C) 2010 The Android Open Source Project
3   *
4   * Licensed under the Apache License, Version 2.0 (the "License");
5   * you may not use this file except in compliance with the License.
6   * You may obtain a copy of the License at
7   *
8   *      http://www.apache.org/licenses/LICENSE-2.0
9   *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  
17  package android.mtp;
18  
19  /**
20   * A class containing constants in the MTP and PTP specifications.
21   */
22  public final class MtpConstants {
23  
24      // MTP Data Types
25      /** @hide */
26      public static final int TYPE_UNDEFINED = 0x0000;
27      /** @hide */
28      public static final int TYPE_INT8 = 0x0001;
29      /** @hide */
30      public static final int TYPE_UINT8 = 0x0002;
31      /** @hide */
32      public static final int TYPE_INT16 = 0x0003;
33      /** @hide */
34      public static final int TYPE_UINT16 = 0x0004;
35      /** @hide */
36      public static final int TYPE_INT32 = 0x0005;
37      /** @hide */
38      public static final int TYPE_UINT32 = 0x0006;
39      /** @hide */
40      public static final int TYPE_INT64 = 0x0007;
41      /** @hide */
42      public static final int TYPE_UINT64 = 0x0008;
43      /** @hide */
44      public static final int TYPE_INT128 = 0x0009;
45      /** @hide */
46      public static final int TYPE_UINT128 = 0x000A;
47      /** @hide */
48      public static final int TYPE_AINT8 = 0x4001;
49      /** @hide */
50      public static final int TYPE_AUINT8 = 0x4002;
51      /** @hide */
52      public static final int TYPE_AINT16 = 0x4003;
53      /** @hide */
54      public static final int TYPE_AUINT16 = 0x4004;
55      /** @hide */
56      public static final int TYPE_AINT32 = 0x4005;
57      /** @hide */
58      public static final int TYPE_AUINT32 = 0x4006;
59      /** @hide */
60      public static final int TYPE_AINT64 = 0x4007;
61      /** @hide */
62      public static final int TYPE_AUINT64 = 0x4008;
63      /** @hide */
64      public static final int TYPE_AINT128 = 0x4009;
65      /** @hide */
66      public static final int TYPE_AUINT128 = 0x400A;
67      /** @hide */
68      public static final int TYPE_STR = 0xFFFF;
69  
70      // MTP Response Codes
71      /** @hide */
72      public static final int RESPONSE_UNDEFINED = 0x2000;
73      /** @hide */
74      public static final int RESPONSE_OK = 0x2001;
75      /** @hide */
76      public static final int RESPONSE_GENERAL_ERROR = 0x2002;
77      /** @hide */
78      public static final int RESPONSE_SESSION_NOT_OPEN = 0x2003;
79      /** @hide */
80      public static final int RESPONSE_INVALID_TRANSACTION_ID = 0x2004;
81      /** @hide */
82      public static final int RESPONSE_OPERATION_NOT_SUPPORTED = 0x2005;
83      /** @hide */
84      public static final int RESPONSE_PARAMETER_NOT_SUPPORTED = 0x2006;
85      /** @hide */
86      public static final int RESPONSE_INCOMPLETE_TRANSFER = 0x2007;
87      /** @hide */
88      public static final int RESPONSE_INVALID_STORAGE_ID = 0x2008;
89      /** @hide */
90      public static final int RESPONSE_INVALID_OBJECT_HANDLE = 0x2009;
91      /** @hide */
92      public static final int RESPONSE_DEVICE_PROP_NOT_SUPPORTED = 0x200A;
93      /** @hide */
94      public static final int RESPONSE_INVALID_OBJECT_FORMAT_CODE = 0x200B;
95      /** @hide */
96      public static final int RESPONSE_STORAGE_FULL = 0x200C;
97      /** @hide */
98      public static final int RESPONSE_OBJECT_WRITE_PROTECTED = 0x200D;
99      /** @hide */
100      public static final int RESPONSE_STORE_READ_ONLY = 0x200E;
101      /** @hide */
102      public static final int RESPONSE_ACCESS_DENIED = 0x200F;
103      /** @hide */
104      public static final int RESPONSE_NO_THUMBNAIL_PRESENT = 0x2010;
105      /** @hide */
106      public static final int RESPONSE_SELF_TEST_FAILED = 0x2011;
107      /** @hide */
108      public static final int RESPONSE_PARTIAL_DELETION = 0x2012;
109      /** @hide */
110      public static final int RESPONSE_STORE_NOT_AVAILABLE = 0x2013;
111      /** @hide */
112      public static final int RESPONSE_SPECIFICATION_BY_FORMAT_UNSUPPORTED = 0x2014;
113      /** @hide */
114      public static final int RESPONSE_NO_VALID_OBJECT_INFO = 0x2015;
115      /** @hide */
116      public static final int RESPONSE_INVALID_CODE_FORMAT = 0x2016;
117      /** @hide */
118      public static final int RESPONSE_UNKNOWN_VENDOR_CODE = 0x2017;
119      /** @hide */
120      public static final int RESPONSE_CAPTURE_ALREADY_TERMINATED = 0x2018;
121      /** @hide */
122      public static final int RESPONSE_DEVICE_BUSY = 0x2019;
123      /** @hide */
124      public static final int RESPONSE_INVALID_PARENT_OBJECT = 0x201A;
125      /** @hide */
126      public static final int RESPONSE_INVALID_DEVICE_PROP_FORMAT = 0x201B;
127      /** @hide */
128      public static final int RESPONSE_INVALID_DEVICE_PROP_VALUE = 0x201C;
129      /** @hide */
130      public static final int RESPONSE_INVALID_PARAMETER = 0x201D;
131      /** @hide */
132      public static final int RESPONSE_SESSION_ALREADY_OPEN = 0x201E;
133      /** @hide */
134      public static final int RESPONSE_TRANSACTION_CANCELLED = 0x201F;
135      /** @hide */
136      public static final int RESPONSE_SPECIFICATION_OF_DESTINATION_UNSUPPORTED = 0x2020;
137      /** @hide */
138      public static final int RESPONSE_INVALID_OBJECT_PROP_CODE = 0xA801;
139      /** @hide */
140      public static final int RESPONSE_INVALID_OBJECT_PROP_FORMAT = 0xA802;
141      /** @hide */
142      public static final int RESPONSE_INVALID_OBJECT_PROP_VALUE = 0xA803;
143      /** @hide */
144      public static final int RESPONSE_INVALID_OBJECT_REFERENCE = 0xA804;
145      /** @hide */
146      public static final int RESPONSE_GROUP_NOT_SUPPORTED = 0xA805;
147      /** @hide */
148      public static final int RESPONSE_INVALID_DATASET = 0xA806;
149      /** @hide */
150      public static final int RESPONSE_SPECIFICATION_BY_GROUP_UNSUPPORTED = 0xA807;
151      /** @hide */
152      public static final int RESPONSE_SPECIFICATION_BY_DEPTH_UNSUPPORTED = 0xA808;
153      /** @hide */
154      public static final int RESPONSE_OBJECT_TOO_LARGE = 0xA809;
155      /** @hide */
156      public static final int RESPONSE_OBJECT_PROP_NOT_SUPPORTED = 0xA80A;
157  
158      // MTP format codes
159      /** Undefined format code */
160      public static final int FORMAT_UNDEFINED = 0x3000;
161      /** Format code for associations (folders and directories) */
162      public static final int FORMAT_ASSOCIATION = 0x3001;
163      /** Format code for script files */
164      public static final int FORMAT_SCRIPT = 0x3002;
165      /** Format code for executable files */
166      public static final int FORMAT_EXECUTABLE = 0x3003;
167      /** Format code for text files */
168      public static final int FORMAT_TEXT = 0x3004;
169      /** Format code for HTML files */
170      public static final int FORMAT_HTML = 0x3005;
171      /** Format code for DPOF files */
172      public static final int FORMAT_DPOF = 0x3006;
173      /** Format code for AIFF audio files */
174      public static final int FORMAT_AIFF = 0x3007;
175      /** Format code for WAV audio files */
176      public static final int FORMAT_WAV = 0x3008;
177      /** Format code for MP3 audio files */
178      public static final int FORMAT_MP3 = 0x3009;
179      /** Format code for AVI video files */
180      public static final int FORMAT_AVI = 0x300A;
181      /** Format code for MPEG video files */
182      public static final int FORMAT_MPEG = 0x300B;
183      /** Format code for ASF files */
184      public static final int FORMAT_ASF = 0x300C;
185      /**
186       * Format code for unknown image files.
187       * <p>
188       * Will be used for the formats which are not specified in PTP specification.
189       * For instance, WEBP and WBMP.
190       */
191      public static final int FORMAT_DEFINED = 0x3800;
192      /** Format code for JPEG image files */
193      public static final int FORMAT_EXIF_JPEG = 0x3801;
194      /** Format code for TIFF EP image files */
195      public static final int FORMAT_TIFF_EP = 0x3802;
196      /** Format code for BMP image files */
197      public static final int FORMAT_BMP = 0x3804;
198      /** Format code for GIF image files */
199      public static final int FORMAT_GIF = 0x3807;
200      /** Format code for JFIF image files */
201      public static final int FORMAT_JFIF = 0x3808;
202      /** Format code for PICT image files */
203      public static final int FORMAT_PICT = 0x380A;
204      /** Format code for PNG image files */
205      public static final int FORMAT_PNG = 0x380B;
206      /** Format code for TIFF image files */
207      public static final int FORMAT_TIFF = 0x380D;
208      /** Format code for JP2 files */
209      public static final int FORMAT_JP2 = 0x380F;
210      /** Format code for JPX files */
211      public static final int FORMAT_JPX = 0x3810;
212      /** Format code for DNG files */
213      public static final int FORMAT_DNG = 0x3811;
214      /** Format code for firmware files */
215      public static final int FORMAT_UNDEFINED_FIRMWARE = 0xB802;
216      /** Format code for Windows image files */
217      public static final int FORMAT_WINDOWS_IMAGE_FORMAT = 0xB881;
218      /** Format code for undefined audio files files */
219      public static final int FORMAT_UNDEFINED_AUDIO = 0xB900;
220      /** Format code for WMA audio files */
221      public static final int FORMAT_WMA = 0xB901;
222      /** Format code for OGG audio files */
223      public static final int FORMAT_OGG = 0xB902;
224      /** Format code for AAC audio files */
225      public static final int FORMAT_AAC = 0xB903;
226      /** Format code for Audible audio files */
227      public static final int FORMAT_AUDIBLE = 0xB904;
228      /** Format code for FLAC audio files */
229      public static final int FORMAT_FLAC = 0xB906;
230      /** Format code for undefined video files */
231      public static final int FORMAT_UNDEFINED_VIDEO = 0xB980;
232      /** Format code for WMV video files */
233      public static final int FORMAT_WMV = 0xB981;
234      /** Format code for MP4 files */
235      public static final int FORMAT_MP4_CONTAINER = 0xB982;
236      /** Format code for MP2 files */
237      public static final int FORMAT_MP2 = 0xB983;
238      /** Format code for 3GP files */
239      public static final int FORMAT_3GP_CONTAINER = 0xB984;
240      /** Format code for undefined collections */
241      public static final int FORMAT_UNDEFINED_COLLECTION = 0xBA00;
242      /** Format code for multimedia albums */
243      public static final int FORMAT_ABSTRACT_MULTIMEDIA_ALBUM = 0xBA01;
244      /** Format code for image albums */
245      public static final int FORMAT_ABSTRACT_IMAGE_ALBUM = 0xBA02;
246      /** Format code for audio albums */
247      public static final int FORMAT_ABSTRACT_AUDIO_ALBUM = 0xBA03;
248      /** Format code for video albums */
249      public static final int FORMAT_ABSTRACT_VIDEO_ALBUM = 0xBA04;
250      /** Format code for abstract AV playlists */
251      public static final int FORMAT_ABSTRACT_AV_PLAYLIST = 0xBA05;
252      /** Format code for abstract audio playlists */
253      public static final int FORMAT_ABSTRACT_AUDIO_PLAYLIST = 0xBA09;
254      /** Format code for abstract video playlists */
255      public static final int FORMAT_ABSTRACT_VIDEO_PLAYLIST = 0xBA0A;
256      /** Format code for abstract mediacasts */
257      public static final int FORMAT_ABSTRACT_MEDIACAST = 0xBA0B;
258      /** Format code for WPL playlist files */
259      public static final int FORMAT_WPL_PLAYLIST = 0xBA10;
260      /** Format code for M3u playlist files */
261      public static final int FORMAT_M3U_PLAYLIST = 0xBA11;
262      /** Format code for MPL playlist files */
263      public static final int FORMAT_MPL_PLAYLIST = 0xBA12;
264      /** Format code for ASX playlist files */
265      public static final int FORMAT_ASX_PLAYLIST = 0xBA13;
266      /** Format code for PLS playlist files */
267      public static final int FORMAT_PLS_PLAYLIST = 0xBA14;
268      /** Format code for undefined document files */
269      public static final int FORMAT_UNDEFINED_DOCUMENT = 0xBA80;
270      /** Format code for abstract documents */
271      public static final int FORMAT_ABSTRACT_DOCUMENT = 0xBA81;
272      /** Format code for XML documents */
273      public static final int FORMAT_XML_DOCUMENT = 0xBA82;
274      /** Format code for MS Word documents */
275      public static final int FORMAT_MS_WORD_DOCUMENT = 0xBA83;
276      /** Format code for MS Excel spreadsheets */
277      public static final int FORMAT_MS_EXCEL_SPREADSHEET = 0xBA85;
278      /** Format code for MS PowerPoint presentatiosn */
279      public static final int FORMAT_MS_POWERPOINT_PRESENTATION = 0xBA86;
280  
281      /**
282       * Returns true if the object is abstract (that is, it has no representation
283       * in the underlying file system).
284       *
285       * @param format the format of the object
286       * @return true if the object is abstract
287       */
isAbstractObject(int format)288      public static boolean isAbstractObject(int format) {
289          switch (format) {
290              case FORMAT_ABSTRACT_MULTIMEDIA_ALBUM:
291              case FORMAT_ABSTRACT_IMAGE_ALBUM:
292              case FORMAT_ABSTRACT_AUDIO_ALBUM:
293              case FORMAT_ABSTRACT_VIDEO_ALBUM:
294              case FORMAT_ABSTRACT_AV_PLAYLIST:
295              case FORMAT_ABSTRACT_AUDIO_PLAYLIST:
296              case FORMAT_ABSTRACT_VIDEO_PLAYLIST:
297              case FORMAT_ABSTRACT_MEDIACAST:
298              case FORMAT_ABSTRACT_DOCUMENT:
299                  return true;
300              default:
301                  return false;
302          }
303      }
304  
305      // MTP object properties
306      /** @hide */
307      public static final int PROPERTY_STORAGE_ID = 0xDC01;
308      /** @hide */
309      public static final int PROPERTY_OBJECT_FORMAT = 0xDC02;
310      /** @hide */
311      public static final int PROPERTY_PROTECTION_STATUS = 0xDC03;
312      /** @hide */
313      public static final int PROPERTY_OBJECT_SIZE = 0xDC04;
314      /** @hide */
315      public static final int PROPERTY_ASSOCIATION_TYPE = 0xDC05;
316      /** @hide */
317      public static final int PROPERTY_ASSOCIATION_DESC = 0xDC06;
318      /** @hide */
319      public static final int PROPERTY_OBJECT_FILE_NAME = 0xDC07;
320      /** @hide */
321      public static final int PROPERTY_DATE_CREATED = 0xDC08;
322      /** @hide */
323      public static final int PROPERTY_DATE_MODIFIED = 0xDC09;
324      /** @hide */
325      public static final int PROPERTY_KEYWORDS = 0xDC0A;
326      /** @hide */
327      public static final int PROPERTY_PARENT_OBJECT = 0xDC0B;
328      /** @hide */
329      public static final int PROPERTY_ALLOWED_FOLDER_CONTENTS = 0xDC0C;
330      /** @hide */
331      public static final int PROPERTY_HIDDEN = 0xDC0D;
332      /** @hide */
333      public static final int PROPERTY_SYSTEM_OBJECT = 0xDC0E;
334      /** @hide */
335      public static final int PROPERTY_PERSISTENT_UID = 0xDC41;
336      /** @hide */
337      public static final int PROPERTY_SYNC_ID = 0xDC42;
338      /** @hide */
339      public static final int PROPERTY_PROPERTY_BAG = 0xDC43;
340      /** @hide */
341      public static final int PROPERTY_NAME = 0xDC44;
342      /** @hide */
343      public static final int PROPERTY_CREATED_BY = 0xDC45;
344      /** @hide */
345      public static final int PROPERTY_ARTIST = 0xDC46;
346      /** @hide */
347      public static final int PROPERTY_DATE_AUTHORED = 0xDC47;
348      /** @hide */
349      public static final int PROPERTY_DESCRIPTION = 0xDC48;
350      /** @hide */
351      public static final int PROPERTY_URL_REFERENCE = 0xDC49;
352      /** @hide */
353      public static final int PROPERTY_LANGUAGE_LOCALE = 0xDC4A;
354      /** @hide */
355      public static final int PROPERTY_COPYRIGHT_INFORMATION = 0xDC4B;
356      /** @hide */
357      public static final int PROPERTY_SOURCE = 0xDC4C;
358      /** @hide */
359      public static final int PROPERTY_ORIGIN_LOCATION = 0xDC4D;
360      /** @hide */
361      public static final int PROPERTY_DATE_ADDED = 0xDC4E;
362      /** @hide */
363      public static final int PROPERTY_NON_CONSUMABLE = 0xDC4F;
364      /** @hide */
365      public static final int PROPERTY_CORRUPT_UNPLAYABLE = 0xDC50;
366      /** @hide */
367      public static final int PROPERTY_PRODUCER_SERIAL_NUMBER = 0xDC51;
368      /** @hide */
369      public static final int PROPERTY_REPRESENTATIVE_SAMPLE_FORMAT = 0xDC81;
370      /** @hide */
371      public static final int PROPERTY_REPRESENTATIVE_SAMPLE_SIZE = 0xDC82;
372      /** @hide */
373      public static final int PROPERTY_REPRESENTATIVE_SAMPLE_HEIGHT = 0xDC83;
374      /** @hide */
375      public static final int PROPERTY_REPRESENTATIVE_SAMPLE_WIDTH = 0xDC84;
376      /** @hide */
377      public static final int PROPERTY_REPRESENTATIVE_SAMPLE_DURATION = 0xDC85;
378      /** @hide */
379      public static final int PROPERTY_REPRESENTATIVE_SAMPLE_DATA = 0xDC86;
380      /** @hide */
381      public static final int PROPERTY_WIDTH = 0xDC87;
382      /** @hide */
383      public static final int PROPERTY_HEIGHT = 0xDC88;
384      /** @hide */
385      public static final int PROPERTY_DURATION = 0xDC89;
386      /** @hide */
387      public static final int PROPERTY_RATING = 0xDC8A;
388      /** @hide */
389      public static final int PROPERTY_TRACK = 0xDC8B;
390      /** @hide */
391      public static final int PROPERTY_GENRE = 0xDC8C;
392      /** @hide */
393      public static final int PROPERTY_CREDITS = 0xDC8D;
394      /** @hide */
395      public static final int PROPERTY_LYRICS = 0xDC8E;
396      /** @hide */
397      public static final int PROPERTY_SUBSCRIPTION_CONTENT_ID = 0xDC8F;
398      /** @hide */
399      public static final int PROPERTY_PRODUCED_BY = 0xDC90;
400      /** @hide */
401      public static final int PROPERTY_USE_COUNT = 0xDC91;
402      /** @hide */
403      public static final int PROPERTY_SKIP_COUNT = 0xDC92;
404      /** @hide */
405      public static final int PROPERTY_LAST_ACCESSED = 0xDC93;
406      /** @hide */
407      public static final int PROPERTY_PARENTAL_RATING = 0xDC94;
408      /** @hide */
409      public static final int PROPERTY_META_GENRE = 0xDC95;
410      /** @hide */
411      public static final int PROPERTY_COMPOSER = 0xDC96;
412      /** @hide */
413      public static final int PROPERTY_EFFECTIVE_RATING = 0xDC97;
414      /** @hide */
415      public static final int PROPERTY_SUBTITLE = 0xDC98;
416      /** @hide */
417      public static final int PROPERTY_ORIGINAL_RELEASE_DATE = 0xDC99;
418      /** @hide */
419      public static final int PROPERTY_ALBUM_NAME = 0xDC9A;
420      /** @hide */
421      public static final int PROPERTY_ALBUM_ARTIST = 0xDC9B;
422      /** @hide */
423      public static final int PROPERTY_MOOD = 0xDC9C;
424      /** @hide */
425      public static final int PROPERTY_DRM_STATUS = 0xDC9D;
426      /** @hide */
427      public static final int PROPERTY_SUB_DESCRIPTION = 0xDC9E;
428      /** @hide */
429      public static final int PROPERTY_IS_CROPPED = 0xDCD1;
430      /** @hide */
431      public static final int PROPERTY_IS_COLOUR_CORRECTED = 0xDCD2;
432      /** @hide */
433      public static final int PROPERTY_IMAGE_BIT_DEPTH = 0xDCD3;
434      /** @hide */
435      public static final int PROPERTY_F_NUMBER = 0xDCD4;
436      /** @hide */
437      public static final int PROPERTY_EXPOSURE_TIME = 0xDCD5;
438      /** @hide */
439      public static final int PROPERTY_EXPOSURE_INDEX = 0xDCD6;
440      /** @hide */
441      public static final int PROPERTY_TOTAL_BITRATE = 0xDE91;
442      /** @hide */
443      public static final int PROPERTY_BITRATE_TYPE = 0xDE92;
444      /** @hide */
445      public static final int PROPERTY_SAMPLE_RATE = 0xDE93;
446      /** @hide */
447      public static final int PROPERTY_NUMBER_OF_CHANNELS = 0xDE94;
448      /** @hide */
449      public static final int PROPERTY_AUDIO_BIT_DEPTH = 0xDE95;
450      /** @hide */
451      public static final int PROPERTY_SCAN_TYPE = 0xDE97;
452      /** @hide */
453      public static final int PROPERTY_AUDIO_WAVE_CODEC = 0xDE99;
454      /** @hide */
455      public static final int PROPERTY_AUDIO_BITRATE = 0xDE9A;
456      /** @hide */
457      public static final int PROPERTY_VIDEO_FOURCC_CODEC = 0xDE9B;
458      /** @hide */
459      public static final int PROPERTY_VIDEO_BITRATE = 0xDE9C;
460      /** @hide */
461      public static final int PROPERTY_FRAMES_PER_THOUSAND_SECONDS = 0xDE9D;
462      /** @hide */
463      public static final int PROPERTY_KEYFRAME_DISTANCE = 0xDE9E;
464      /** @hide */
465      public static final int PROPERTY_BUFFER_SIZE = 0xDE9F;
466      /** @hide */
467      public static final int PROPERTY_ENCODING_QUALITY = 0xDEA0;
468      /** @hide */
469      public static final int PROPERTY_ENCODING_PROFILE = 0xDEA1;
470      /** @hide */
471      public static final int PROPERTY_DISPLAY_NAME = 0xDCE0;
472  
473      // MTP device properties
474      /** @hide */
475      public static final int DEVICE_PROPERTY_UNDEFINED = 0x5000;
476      /** @hide */
477      public static final int DEVICE_PROPERTY_BATTERY_LEVEL = 0x5001;
478      /** @hide */
479      public static final int DEVICE_PROPERTY_FUNCTIONAL_MODE = 0x5002;
480      /** @hide */
481      public static final int DEVICE_PROPERTY_IMAGE_SIZE = 0x5003;
482      /** @hide */
483      public static final int DEVICE_PROPERTY_COMPRESSION_SETTING = 0x5004;
484      /** @hide */
485      public static final int DEVICE_PROPERTY_WHITE_BALANCE = 0x5005;
486      /** @hide */
487      public static final int DEVICE_PROPERTY_RGB_GAIN = 0x5006;
488      /** @hide */
489      public static final int DEVICE_PROPERTY_F_NUMBER = 0x5007;
490      /** @hide */
491      public static final int DEVICE_PROPERTY_FOCAL_LENGTH = 0x5008;
492      /** @hide */
493      public static final int DEVICE_PROPERTY_FOCUS_DISTANCE = 0x5009;
494      /** @hide */
495      public static final int DEVICE_PROPERTY_FOCUS_MODE = 0x500A;
496      /** @hide */
497      public static final int DEVICE_PROPERTY_EXPOSURE_METERING_MODE = 0x500B;
498      /** @hide */
499      public static final int DEVICE_PROPERTY_FLASH_MODE = 0x500C;
500      /** @hide */
501      public static final int DEVICE_PROPERTY_EXPOSURE_TIME = 0x500D;
502      /** @hide */
503      public static final int DEVICE_PROPERTY_EXPOSURE_PROGRAM_MODE = 0x500E;
504      /** @hide */
505      public static final int DEVICE_PROPERTY_EXPOSURE_INDEX = 0x500F;
506      /** @hide */
507      public static final int DEVICE_PROPERTY_EXPOSURE_BIAS_COMPENSATION = 0x5010;
508      /** @hide */
509      public static final int DEVICE_PROPERTY_DATETIME = 0x5011;
510      /** @hide */
511      public static final int DEVICE_PROPERTY_CAPTURE_DELAY = 0x5012;
512      /** @hide */
513      public static final int DEVICE_PROPERTY_STILL_CAPTURE_MODE = 0x5013;
514      /** @hide */
515      public static final int DEVICE_PROPERTY_CONTRAST = 0x5014;
516      /** @hide */
517      public static final int DEVICE_PROPERTY_SHARPNESS = 0x5015;
518      /** @hide */
519      public static final int DEVICE_PROPERTY_DIGITAL_ZOOM = 0x5016;
520      /** @hide */
521      public static final int DEVICE_PROPERTY_EFFECT_MODE = 0x5017;
522      /** @hide */
523      public static final int DEVICE_PROPERTY_BURST_NUMBER= 0x5018;
524      /** @hide */
525      public static final int DEVICE_PROPERTY_BURST_INTERVAL = 0x5019;
526      /** @hide */
527      public static final int DEVICE_PROPERTY_TIMELAPSE_NUMBER = 0x501A;
528      /** @hide */
529      public static final int DEVICE_PROPERTY_TIMELAPSE_INTERVAL = 0x501B;
530      /** @hide */
531      public static final int DEVICE_PROPERTY_FOCUS_METERING_MODE = 0x501C;
532      /** @hide */
533      public static final int DEVICE_PROPERTY_UPLOAD_URL = 0x501D;
534      /** @hide */
535      public static final int DEVICE_PROPERTY_ARTIST = 0x501E;
536      /** @hide */
537      public static final int DEVICE_PROPERTY_COPYRIGHT_INFO = 0x501F;
538      /** @hide */
539      public static final int DEVICE_PROPERTY_SYNCHRONIZATION_PARTNER = 0xD401;
540      /** @hide */
541      public static final int DEVICE_PROPERTY_DEVICE_FRIENDLY_NAME = 0xD402;
542      /** @hide */
543      public static final int DEVICE_PROPERTY_VOLUME = 0xD403;
544      /** @hide */
545      public static final int DEVICE_PROPERTY_SUPPORTED_FORMATS_ORDERED = 0xD404;
546      /** @hide */
547      public static final int DEVICE_PROPERTY_DEVICE_ICON = 0xD405;
548      /** @hide */
549      public static final int DEVICE_PROPERTY_PLAYBACK_RATE = 0xD410;
550      /** @hide */
551      public static final int DEVICE_PROPERTY_PLAYBACK_OBJECT = 0xD411;
552      /** @hide */
553      public static final int DEVICE_PROPERTY_PLAYBACK_CONTAINER_INDEX = 0xD412;
554      /** @hide */
555      public static final int DEVICE_PROPERTY_SESSION_INITIATOR_VERSION_INFO = 0xD406;
556      /** @hide */
557      public static final int DEVICE_PROPERTY_PERCEIVED_DEVICE_TYPE = 0xD407;
558  
559      /**
560       * Object is not protected. It may be modified and deleted, and its properties
561       * may be modified.
562       */
563      public static final int PROTECTION_STATUS_NONE = 0;
564  
565      /**
566       * Object can not be modified or deleted and its properties can not be modified.
567       */
568      public static final int PROTECTION_STATUS_READ_ONLY = 0x8001;
569  
570      /**
571       * Object can not be modified or deleted but its properties are modifiable.
572       */
573      public static final int PROTECTION_STATUS_READ_ONLY_DATA = 0x8002;
574  
575      /**
576       * Object's contents can not be transfered from the device, but the object
577       * may be moved or deleted and its properties may be modified.
578       */
579      public static final int PROTECTION_STATUS_NON_TRANSFERABLE_DATA = 0x8003;
580  
581      /**
582       * Association type for objects representing file system directories.
583       */
584      public static final int ASSOCIATION_TYPE_GENERIC_FOLDER = 0x0001;
585  
586      /** @removed */
587      public static final int EVENT_UNDEFINED = 0x4000;
588      /** @removed */
589      public static final int EVENT_CANCEL_TRANSACTION = 0x4001;
590      /** @removed */
591      public static final int EVENT_OBJECT_ADDED = 0x4002;
592      /** @removed */
593      public static final int EVENT_OBJECT_REMOVED = 0x4003;
594      /** @removed */
595      public static final int EVENT_STORE_ADDED = 0x4004;
596      /** @removed */
597      public static final int EVENT_STORE_REMOVED = 0x4005;
598      /** @removed */
599      public static final int EVENT_DEVICE_PROP_CHANGED = 0x4006;
600      /** @removed */
601      public static final int EVENT_OBJECT_INFO_CHANGED = 0x4007;
602      /** @removed */
603      public static final int EVENT_DEVICE_INFO_CHANGED = 0x4008;
604      /** @removed */
605      public static final int EVENT_REQUEST_OBJECT_TRANSFER = 0x4009;
606      /** @removed */
607      public static final int EVENT_STORE_FULL = 0x400A;
608      /** @removed */
609      public static final int EVENT_DEVICE_RESET = 0x400B;
610      /** @removed */
611      public static final int EVENT_STORAGE_INFO_CHANGED = 0x400C;
612      /** @removed */
613      public static final int EVENT_CAPTURE_COMPLETE = 0x400D;
614      /** @removed */
615      public static final int EVENT_UNREPORTED_STATUS = 0x400E;
616      /** @removed */
617      public static final int EVENT_OBJECT_PROP_CHANGED = 0xC801;
618      /** @removed */
619      public static final int EVENT_OBJECT_PROP_DESC_CHANGED = 0xC802;
620      /** @removed */
621      public static final int EVENT_OBJECT_REFERENCES_CHANGED = 0xC803;
622  
623      /** Operation code for GetDeviceInfo */
624      public static final int OPERATION_GET_DEVICE_INFO = 0x1001;
625      /** Operation code for OpenSession */
626      public static final int OPERATION_OPEN_SESSION = 0x1002;
627      /** Operation code for CloseSession */
628      public static final int OPERATION_CLOSE_SESSION = 0x1003;
629      /** Operation code for GetStorageIDs */
630      public static final int OPERATION_GET_STORAGE_I_DS = 0x1004;
631      /** Operation code for GetStorageInfo */
632      public static final int OPERATION_GET_STORAGE_INFO = 0x1005;
633      /** Operation code for GetNumObjects */
634      public static final int OPERATION_GET_NUM_OBJECTS = 0x1006;
635      /** Operation code for GetObjectHandles */
636      public static final int OPERATION_GET_OBJECT_HANDLES = 0x1007;
637      /** Operation code for GetObjectInfo */
638      public static final int OPERATION_GET_OBJECT_INFO = 0x1008;
639      /** Operation code for GetObject */
640      public static final int OPERATION_GET_OBJECT = 0x1009;
641      /** Operation code for GetThumb */
642      public static final int OPERATION_GET_THUMB = 0x100A;
643      /** Operation code for DeleteObject */
644      public static final int OPERATION_DELETE_OBJECT = 0x100B;
645      /** Operation code for SendObjectInfo */
646      public static final int OPERATION_SEND_OBJECT_INFO = 0x100C;
647      /** Operation code for SendObject */
648      public static final int OPERATION_SEND_OBJECT = 0x100D;
649      /** Operation code for InitiateCapture */
650      public static final int OPERATION_INITIATE_CAPTURE = 0x100E;
651      /** Operation code for FormatStore */
652      public static final int OPERATION_FORMAT_STORE = 0x100F;
653      /** Operation code for ResetDevice */
654      public static final int OPERATION_RESET_DEVICE = 0x1010;
655      /** Operation code for SelfTest */
656      public static final int OPERATION_SELF_TEST = 0x1011;
657      /** Operation code for SetObjectProtection */
658      public static final int OPERATION_SET_OBJECT_PROTECTION = 0x1012;
659      /** Operation code for PowerDown */
660      public static final int OPERATION_POWER_DOWN = 0x1013;
661      /** Operation code for GetDevicePropDesc */
662      public static final int OPERATION_GET_DEVICE_PROP_DESC = 0x1014;
663      /** Operation code for GetDevicePropValue */
664      public static final int OPERATION_GET_DEVICE_PROP_VALUE = 0x1015;
665      /** Operation code for SetDevicePropValue */
666      public static final int OPERATION_SET_DEVICE_PROP_VALUE = 0x1016;
667      /** Operation code for ResetDevicePropValue */
668      public static final int OPERATION_RESET_DEVICE_PROP_VALUE = 0x1017;
669      /** Operation code for TerminateOpenCapture */
670      public static final int OPERATION_TERMINATE_OPEN_CAPTURE = 0x1018;
671      /** Operation code for MoveObject */
672      public static final int OPERATION_MOVE_OBJECT = 0x1019;
673      /** Operation code for CopyObject */
674      public static final int OPERATION_COPY_OBJECT = 0x101A;
675      /** Operation code for GetPartialObject */
676      public static final int OPERATION_GET_PARTIAL_OBJECT = 0x101B;
677      /** Operation code for InitiateOpenCapture */
678      public static final int OPERATION_INITIATE_OPEN_CAPTURE = 0x101C;
679      /** Operation code for GetObjectPropsSupported */
680      public static final int OPERATION_GET_OBJECT_PROPS_SUPPORTED = 0x9801;
681      /** Operation code for GetObjectPropDesc */
682      public static final int OPERATION_GET_OBJECT_PROP_DESC = 0x9802;
683      /** Operation code for GetObjectPropValue */
684      public static final int OPERATION_GET_OBJECT_PROP_VALUE = 0x9803;
685      /** Operation code for SetObjectPropValue */
686      public static final int OPERATION_SET_OBJECT_PROP_VALUE = 0x9804;
687      /** Operation code for GetObjectReferences */
688      public static final int OPERATION_GET_OBJECT_REFERENCES = 0x9810;
689      /** Operation code for SetObjectReferences */
690      public static final int OPERATION_SET_OBJECT_REFERENCES = 0x9811;
691      /** Operation code for Skip */
692      public static final int OPERATION_SKIP = 0x9820;
693      /** Operation code for GetPartialObject64 */
694      public static final int OPERATION_GET_PARTIAL_OBJECT_64 = 0x95C1;
695  }
696