williamr@2: /*
williamr@2: * Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies). 
williamr@2: * All rights reserved.
williamr@2: * This component and the accompanying materials are made available
williamr@4: * under the terms of "Eclipse Public License v1.0"
williamr@2: * which accompanies this distribution, and is available
williamr@4: * at the URL "http://www.eclipse.org/legal/epl-v10.html".
williamr@2: *
williamr@2: * Initial Contributors:
williamr@2: * Nokia Corporation - initial contribution.
williamr@2: *
williamr@2: * Contributors:
williamr@2: *
williamr@2: * Description: 
williamr@2: *
williamr@2: */
williamr@2: 
williamr@2: 
williamr@2: #ifndef CLFCONTENTLISTING_HRH
williamr@2: #define CLFCONTENTLISTING_HRH
williamr@2: 
williamr@2: // DATA TYPES
williamr@2: 
williamr@2: /**
williamr@2: *  Content Listing Framework list model media types.
williamr@2: */
williamr@2: enum TCLFMediaType
williamr@2:     {
williamr@2:     /// Unknown media type
williamr@2:     ECLFMediaTypeUnknown        = 0x0,
williamr@2:     /// Music media type
williamr@2:     ECLFMediaTypeMusic          = 0x1,
williamr@2:     /// Sound media type
williamr@2:     ECLFMediaTypeSound          = 0x2,
williamr@2:     /// Image media type
williamr@2:     ECLFMediaTypeImage          = 0x3,
williamr@2:     /// Video media type
williamr@2:     ECLFMediaTypeVideo          = 0x4,
williamr@2:     /// Streaming URLs
williamr@2:     ECLFMediaTypeStreamingURL   = 0x5,
williamr@2:     /// Playlists
williamr@2:     ECLFMediaTypePlaylist       = 0x6,
williamr@2:     /// Presentations
williamr@2:     ECLFMediaTypePresentations  = 0x8
williamr@2:     };
williamr@2: 
williamr@2: /**
williamr@2: *  Content Listing Framework list model grouping styles.
williamr@2: */
williamr@2: enum TCLFGrouping
williamr@2:     {
williamr@2:     /// No grouping
williamr@2:     ECLFNoGrouping          = 0x0,
williamr@2:     /// Model groups items to music albums
williamr@2:     ECLFMusicAlbumGrouping  = 0x1
williamr@2:     };
williamr@2: 
williamr@2: /**
williamr@2: *  Content Listing Framework sorting style orderings.
williamr@2: */
williamr@2: enum TCLFSortingStyleOrdering
williamr@2:     {
williamr@2:     /// Ascending sorting order
williamr@2:     ECLFOrderingAscending   = 0x0,
williamr@2:     /// Descending sorting order
williamr@2:     ECLFOrderingDescending  = 0x1
williamr@2:     };
williamr@2: 
williamr@2: /**
williamr@2: *  Content Listing Framework undefined item position.
williamr@2: */
williamr@2: enum TCLFUndefinedItemPosition
williamr@2:     {
williamr@2:     /// Undefined items are added to end in the list
williamr@2:     ECLFSortingStyleUndefinedEnd   = 0x0,
williamr@2:     /// Undefined items are added to first in the list
williamr@2:     ECLFSortingStyleUndefinedFirst  = 0x1
williamr@2:     };
williamr@2: 
williamr@2: /**
williamr@2: *  Content Listing Framework item fields data types.
williamr@2: */
williamr@2: enum TCLFItemDataType
williamr@2:     {
williamr@2:     /// Undefined data type, do not use
williamr@2:     ECLFItemDataTypeNull    = 0x0,
williamr@2:     /// Data type is Integer
williamr@2:     ECLFItemDataTypeTInt32  = 0x1,
williamr@2:     /// Data type is descriptor
williamr@2:     ECLFItemDataTypeDesC    = 0x2,
williamr@2:     /// Data type is date/time
williamr@2:     ECLFItemDataTypeTTime   = 0x3
williamr@2:     };
williamr@2: 
williamr@2: /**
williamr@2: *  Content Listing Framework item field IDs.
williamr@2: */
williamr@2: enum TCLFDefaultFieldId
williamr@2:     {
williamr@2:     /// Null field ID, do not use
williamr@2:     ECLFFieldIdNull                 = 0x00000000,
williamr@2:     // File data
williamr@2:     /// File name field:
williamr@2:     /// descriptor
williamr@2:     ECLFFieldIdFileName             = 0x00000001,
williamr@2:     /// File name field:
williamr@2:     /// descriptor
williamr@2:     ECLFFieldIdFileExtension        = 0x00000002,
williamr@2:     /// File path field:
williamr@2:     /// descriptor
williamr@2:     ECLFFieldIdPath                 = 0x00000003,
williamr@2:     /// File drive field:
williamr@2:     /// descriptor
williamr@2:     ECLFFieldIdDrive                = 0x00000004,
williamr@2:     /// File size field:
williamr@2:     /// integer
williamr@2:     ECLFFieldIdFileSize             = 0x00000005,
williamr@2:     /// File date field:
williamr@2:     /// date/time
williamr@2:     ECLFFieldIdFileDate             = 0x00000006,
williamr@2:     /// Mime type field:
williamr@2:     /// descriptor
williamr@2:     ECLFFieldIdMimeType             = 0x00000007,
williamr@2:     /// Media type field:
williamr@2:     /// integer
williamr@2:     ECLFFieldIdMediaType            = 0x00000008,
williamr@2:     /// Full name and path of the file:
williamr@2:     /// descriptor
williamr@2:     ECLFFieldIdFileNameAndPath      = 0x0000000B,
williamr@2: 
williamr@2:     /// Music file song name:
williamr@2:     /// descriptor
williamr@2:     ECLFFieldIdSongName             = 0x00001000,
williamr@2:     /// Music file artist:
williamr@2:     /// descriptor
williamr@2:     ECLFFieldIdArtist               = 0x00001001,
williamr@2:     /// Music file album:
williamr@2:     /// descriptor
williamr@2:     ECLFFieldIdAlbum                = 0x00001002,
williamr@2:     /// Music file genre:
williamr@2:     /// descriptor
williamr@2:     ECLFFieldIdGenre                = 0x00001003,
williamr@2:     /// Music file track number:
williamr@2:     /// integer
williamr@2:     ECLFFieldIdTrackNumber          = 0x00001004,
williamr@2:     /// Music file composer:
williamr@2:     /// descriptor
williamr@2:     ECLFFieldIdComposer             = 0x00001104,
williamr@2: 
williamr@2:     /// Ram link first URL:
williamr@2:     /// descriptor
williamr@2:     ECLFFieldIdRamLinkFirstURL      = 0x00001200,
williamr@2: 
williamr@2:     /// Playlist song count:
williamr@2:     /// integer
williamr@2:     ECLFFieldIdPlaylistSongCount    = 0x00001201
williamr@2:     };
williamr@2: 
williamr@2: #endif
williamr@2: 
williamr@2: // End of File