mpdata/inc/mpsongdata_p.h
author hgs
Fri, 09 Jul 2010 16:27:03 -0500
changeset 43 0f32e550d9d8
permissions -rw-r--r--
201027
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
43
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description: Metadata of song for details view - private implementation.
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
#ifndef MPSONGDATA_P_H
hgs
parents:
diff changeset
    19
#define MPSONGDATA_P_H
hgs
parents:
diff changeset
    20
hgs
parents:
diff changeset
    21
#include "mpsongdata.h"
hgs
parents:
diff changeset
    22
hgs
parents:
diff changeset
    23
class CMPXMedia;
hgs
parents:
diff changeset
    24
class ThumbnailManager;
hgs
parents:
diff changeset
    25
hgs
parents:
diff changeset
    26
class MpSongDataPrivate
hgs
parents:
diff changeset
    27
{
hgs
parents:
diff changeset
    28
public:
hgs
parents:
diff changeset
    29
    explicit MpSongDataPrivate( MpSongData *wrapper, ThumbnailManager *thumbnailManager );
hgs
parents:
diff changeset
    30
    virtual ~MpSongDataPrivate();
hgs
parents:
diff changeset
    31
hgs
parents:
diff changeset
    32
    QString title() const;
hgs
parents:
diff changeset
    33
    QString album() const;
hgs
parents:
diff changeset
    34
    QString artist() const;
hgs
parents:
diff changeset
    35
    QString comment() const;
hgs
parents:
diff changeset
    36
    void albumArt( HbIcon& icon ) const;
hgs
parents:
diff changeset
    37
    QString year() const;
hgs
parents:
diff changeset
    38
    QString genre() const;
hgs
parents:
diff changeset
    39
    QString composer() const;
hgs
parents:
diff changeset
    40
    QString albumTrack() const;
hgs
parents:
diff changeset
    41
    QString link() const;
hgs
parents:
diff changeset
    42
    QString fileName() const;
hgs
parents:
diff changeset
    43
    QString mimeType() const;
hgs
parents:
diff changeset
    44
    QString duration() const;
hgs
parents:
diff changeset
    45
    QString bitRate() const;
hgs
parents:
diff changeset
    46
    QString sampleRate() const;
hgs
parents:
diff changeset
    47
    QString size() const;
hgs
parents:
diff changeset
    48
    QString modified() const;
hgs
parents:
diff changeset
    49
    QString copyright() const;
hgs
parents:
diff changeset
    50
    QString musicURL() const;
hgs
parents:
diff changeset
    51
    bool isDrmProtected() const;
hgs
parents:
diff changeset
    52
hgs
parents:
diff changeset
    53
    QString albumArtBase64() const;
hgs
parents:
diff changeset
    54
    void removeAlbumArtFile() const; //TODO: Remove when base64 starts to work
hgs
parents:
diff changeset
    55
hgs
parents:
diff changeset
    56
    void setLink( const QString &link );
hgs
parents:
diff changeset
    57
    void setMpxMedia( const CMPXMedia& aMedia );
hgs
parents:
diff changeset
    58
hgs
parents:
diff changeset
    59
    int reservedLength() const;
hgs
parents:
diff changeset
    60
    void thumbnailReady( QPixmap pixmap, void *data, int id, int error );
hgs
parents:
diff changeset
    61
hgs
parents:
diff changeset
    62
private:
hgs
parents:
diff changeset
    63
hgs
parents:
diff changeset
    64
    void DoSetMpxMediaL( const CMPXMedia& aMedia );
hgs
parents:
diff changeset
    65
hgs
parents:
diff changeset
    66
    bool setTitle( const QString &title );
hgs
parents:
diff changeset
    67
    bool setAlbum( const QString &album );
hgs
parents:
diff changeset
    68
    bool setArtist( const QString &artist );
hgs
parents:
diff changeset
    69
    bool setComment( const QString &comment );
hgs
parents:
diff changeset
    70
    void setAlbumArtUri( const QString &albumArtUri );
hgs
parents:
diff changeset
    71
    bool setYear( int date );
hgs
parents:
diff changeset
    72
    bool setGenre( const QString &genre );
hgs
parents:
diff changeset
    73
    bool setComposer( const QString &compoer );
hgs
parents:
diff changeset
    74
    bool setAlbumTrack( const QString &albumtrack );
hgs
parents:
diff changeset
    75
    bool setFileName( const QString &fileName );
hgs
parents:
diff changeset
    76
    bool setMimeType( const QString &mimeType );
hgs
parents:
diff changeset
    77
    bool setDuration( int duration );
hgs
parents:
diff changeset
    78
    bool setBitRate( int bitRate);
hgs
parents:
diff changeset
    79
    bool setSampleRate( int sampleRate );
hgs
parents:
diff changeset
    80
    bool setSize( int size );
hgs
parents:
diff changeset
    81
    bool setModified( const QString &modified );
hgs
parents:
diff changeset
    82
    bool setCopyright( const QString &copyright );
hgs
parents:
diff changeset
    83
    bool setMusicURL( const QString &musicURL );
hgs
parents:
diff changeset
    84
    bool setDrmProtected( bool drmProtected );
hgs
parents:
diff changeset
    85
hgs
parents:
diff changeset
    86
private:
hgs
parents:
diff changeset
    87
hgs
parents:
diff changeset
    88
    MpSongData          *q_ptr;
hgs
parents:
diff changeset
    89
hgs
parents:
diff changeset
    90
    ThumbnailManager    *mThumbnailManager; // Not owned
hgs
parents:
diff changeset
    91
    TInt                mReqId;
hgs
parents:
diff changeset
    92
hgs
parents:
diff changeset
    93
    QString             mTitle;
hgs
parents:
diff changeset
    94
    QString             mAlbum;
hgs
parents:
diff changeset
    95
    QString             mArtist;
hgs
parents:
diff changeset
    96
    QString             mComment;
hgs
parents:
diff changeset
    97
    QString             mComposer;
hgs
parents:
diff changeset
    98
    QString             mGenre;
hgs
parents:
diff changeset
    99
    QString             mYear;
hgs
parents:
diff changeset
   100
    QString             mAlbumTrack;
hgs
parents:
diff changeset
   101
    HbIcon              *mAlbumArt;
hgs
parents:
diff changeset
   102
    HbIcon              *mDefaultAlbumArt;
hgs
parents:
diff changeset
   103
    QString             currentAAUri;
hgs
parents:
diff changeset
   104
    QString             mLink;
hgs
parents:
diff changeset
   105
    QString             mFileName;
hgs
parents:
diff changeset
   106
    QString             mMimeType;
hgs
parents:
diff changeset
   107
    QString             mDuration;
hgs
parents:
diff changeset
   108
    QString             mBitRate;
hgs
parents:
diff changeset
   109
    QString             mSampleRate;
hgs
parents:
diff changeset
   110
    QString             mSize;
hgs
parents:
diff changeset
   111
    QString             mModified;
hgs
parents:
diff changeset
   112
    QString             mCopyright;
hgs
parents:
diff changeset
   113
    QString             mMusicURL;
hgs
parents:
diff changeset
   114
    bool                mDrmProtected;
hgs
parents:
diff changeset
   115
    QString             mTempAlbumArt; //TODO: Remove when base64 starts to work
hgs
parents:
diff changeset
   116
hgs
parents:
diff changeset
   117
};
hgs
parents:
diff changeset
   118
hgs
parents:
diff changeset
   119
#endif // MPSONGDATA_P_H