// Copyright 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // These data structures can be used to describe the contents of an iTunes // library. #ifndef CHROME_COMMON_MEDIA_GALLERIES_ITUNES_LIBRARY_H_ #define CHROME_COMMON_MEDIA_GALLERIES_ITUNES_LIBRARY_H_ #include <map> #include <set> #include "base/files/file_path.h" namespace itunes { namespace parser { struct Track { Track(); Track(uint64 id, const base::FilePath& location); bool operator<(const Track& other) const; uint64 id; base::FilePath location; }; typedef std::set<Track> Album; typedef std::map<std::string /*album name*/, Album> Albums; typedef std::map<std::string /*artist name*/, Albums> Library; } // namespace parser } // namespace itunes #endif // CHROME_COMMON_MEDIA_GALLERIES_ITUNES_LIBRARY_H_