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// MTPDeviceObjectEntry contains the media transfer protocol device object 15// property values that are obtained using 16// IPortableDeviceProperties::GetValues(). 17struct MTPDeviceObjectEntry { 18 MTPDeviceObjectEntry(); // Necessary for STL. 19 MTPDeviceObjectEntry(const base::string16& object_id, 20 const base::string16& object_name, 21 bool is_directory, 22 int64 size, 23 const base::Time& last_modified_time); 24 25 // The object identifier obtained using IEnumPortableDeviceObjectIDs::Next(), 26 // e.g. "o299". 27 base::string16 object_id; 28 29 // Friendly name of the object, e.g. "IMG_9911.jpeg". 30 base::string16 name; 31 32 // True if the current object is a directory/folder/album content type. 33 bool is_directory; 34 35 // The object file size in bytes, e.g. "882992". 36 int64 size; 37 38 // Last modified time of the object. 39 base::Time last_modified_time; 40}; 41 42typedef std::vector<MTPDeviceObjectEntry> MTPDeviceObjectEntries; 43 44#endif // CHROME_BROWSER_MEDIA_GALLERIES_WIN_MTP_DEVICE_OBJECT_ENTRY_H_ 45