1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_MEDIA_GALLERIES_WIN_MTP_DEVICE_OBJECT_ENTRY_H_ 6 #define CHROME_BROWSER_MEDIA_GALLERIES_WIN_MTP_DEVICE_OBJECT_ENTRY_H_ 7 8 #include <vector> 9 10 #include "base/basictypes.h" 11 #include "base/strings/string16.h" 12 #include "base/time/time.h" 13 14 namespace chrome { 15 16 // MTPDeviceObjectEntry contains the media transfer protocol device object 17 // property values that are obtained using 18 // IPortableDeviceProperties::GetValues(). 19 struct MTPDeviceObjectEntry { 20 MTPDeviceObjectEntry(); // Necessary for STL. 21 MTPDeviceObjectEntry(const string16& object_id, 22 const string16& object_name, 23 bool is_directory, 24 int64 size, 25 const base::Time& last_modified_time); 26 27 // The object identifier obtained using IEnumPortableDeviceObjectIDs::Next(), 28 // e.g. "o299". 29 string16 object_id; 30 31 // Friendly name of the object, e.g. "IMG_9911.jpeg". 32 string16 name; 33 34 // True if the current object is a directory/folder/album content type. 35 bool is_directory; 36 37 // The object file size in bytes, e.g. "882992". 38 int64 size; 39 40 // Last modified time of the object. 41 base::Time last_modified_time; 42 }; 43 44 typedef std::vector<MTPDeviceObjectEntry> MTPDeviceObjectEntries; 45 46 } // namespace chrome 47 48 #endif // CHROME_BROWSER_MEDIA_GALLERIES_WIN_MTP_DEVICE_OBJECT_ENTRY_H_ 49