示例#1
0
        private void AddGenreExpansion(Genre parent, GenreFilteredAlbum child)
        {
            if (!m_GenreExpansion.ContainsKey(parent))
            {
                m_GenreExpansion[parent] = new SortedSet <GenreFilteredAlbum>(m_GenreFilteredAlbumSortRule);
            }

            m_GenreExpansion[parent].Add(child);
        }
示例#2
0
        private GenreFilteredAlbum GetOrCreateGenreFilteredAlbum(Album album, MPDSongResponseBlock block)
        {
            Genre genre = Genres[block.Genre ?? UnknownGenre];

            if (!m_GenreFilteredAlbumLookup.ContainsKey(genre))
            {
                m_GenreFilteredAlbumLookup[genre] = new SortedDictionary <Album, GenreFilteredAlbum>();
            }

            IDictionary <Album, GenreFilteredAlbum> albumList = m_GenreFilteredAlbumLookup[genre];

            if (!albumList.ContainsKey(album))
            {
                string             directory          = new Path(block.File).Directories.Last();
                GenreFilteredAlbum genreFilteredAlbum = new GenreFilteredAlbum(genre, album.Artist, album.Title, album.Date, directory);
                m_GenreFilteredAlbumLookup[genre][album] = genreFilteredAlbum;
                AddGenreExpansion(genre, genreFilteredAlbum);
            }

            return(m_GenreFilteredAlbumLookup[genre][album]);
        }