diff -r 608f67c22514 -r 896e9dbc5f19 internetradio2.0/ircommon/inc/irbrowsechannelitems.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/internetradio2.0/ircommon/inc/irbrowsechannelitems.h Wed Aug 18 09:40:26 2010 +0300 @@ -0,0 +1,189 @@ +/* +* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". + * + * Initial Contributors: + * Nokia Corporation - initial contribution. + * + * Contributors: + * + * Description: + * + */ + +#ifndef IRBROWSECHANNELITEMS_H +#define IRBROWSECHANNELITEMS_H + +#include + +class RReadStream; +class RWriteStream; + +/** + * This class provides the basic structure to hold the browse information + * information that come from the isds server. + * It also provides the basic getter and setter functions to + * manage the browse information. + * @code + * CIRBrowseChannelItems* browse = CIRBrowseChannelItems::NewL() + * browse->SetXXX(); + * browse->GetXXX() + * delete browse; + * @endcode + * + */ +class CIRBrowseChannelItems : public CBase + { +public : + + /** + * CIRBrowseChannelItems::NewLC() + * Static function + * standard two phased constructor + * @return CIRBrowseChannelItems* + */ + IMPORT_C static CIRBrowseChannelItems* NewLC(); + + /** + * CIRBrowseChannelItems::NewL() + * Static function + * standard two phased constructor + * @return CIRBrowseChannelItems* + */ + IMPORT_C static CIRBrowseChannelItems* NewL(); + + /** + * CIRBrowseChannelItems::ConstructL() + * standard two phased constructor + */ + void ConstructL() const; + + /** + * CIRBrowseChannelItems::~CIRBrowseChannelItems() + * standard C++ destructor + */ + ~CIRBrowseChannelItems(); + +public: + + /** + * CIRBrowseChannelItems::SetTextL() + * Set data namely channelname,channelid,description + * @param TDesC,TDesC,TDesC + */ + IMPORT_C void SetTextL( + const TDesC& aChannelName,const TDesC& aChannelId, const TDesC& aDescription ); + + /** + * CIRBrowseChannelItems::SetGetOperationL() + * Set data get methord + * @param TDesC + */ + IMPORT_C void SetGetOperationL( const TDesC& aChannelGetOperation ); + + /** + * CIRBrowseChannelItems::SetSize() + * Set data size of data + * @param TDesC + */ + IMPORT_C void SetSize( const TDesC& aSize ); + + /** + * CIRBrowseChannelItems::SetImageUrlL() + * Set data for iImgUrl + * @param TDesC + */ + IMPORT_C void SetImageUrlL( const TDesC& aImgUrl ); + + /** + * CIRBrowseChannelItems::SetGetOperation() + * Set data for the get operation + * @param TDesC + */ + IMPORT_C void SetGetOperation( TDesC& aCatGetOperation ); + + /** + * CIRBrowseChannelItems::ExternalizeL() + * Externalizes data into persistent storage + * @param RWriteStream + */ + IMPORT_C void ExternalizeL( RWriteStream& aStream ) const; + + /** + * CIRBrowseChannelItems::InternalizeL() + * internalizes data from persistent storage + * @param RReadStream + */ + IMPORT_C void InternalizeL( RReadStream& aStream ); + + /** + * CIRBrowseChannelItems::SetLastPlayedUrl() + * Sets the last played url + */ + IMPORT_C void SetLastPlayedUrl(); + + /** + * CIRBrowseChannelItems::SetBitrate() + * Set data for 3bitrates + * @param TDesC,TDesC,TDesC + */ + IMPORT_C void SetBitrate( + const TDesC& aBitrate1,const TDesC& aBitrate2, const TDesC& aBitrate3 ); + + /** + * CIRBrowseChannelItems::SetBitrate() + * Set data for 2 bitrates + * @param TDesC,TDesC + */ + IMPORT_C void SetBitrate( const TDesC& aBitrate1, const TDesC& aBitrate2 ); + + /** + * CIRBrowseChannelItems::SetBitrate() + * Set data for 1 bitrate + * @param TDesC + */ + IMPORT_C void SetBitrate( const TDesC& aBitrate1 ); + + /** + * CIRBrowseChannelItems::SetBannerUrl() + * Set data Banner Url, For Advertisements + * @param TDesC + */ + IMPORT_C void SetBannerUrl( const TDesC& aBannerUrl ); + + /** + * CIRBrowseChannelItems::SetClickThroughUrl() + * Set data Banner Url + * @param TDesC + */ + IMPORT_C void SetClickThroughUrl( const TDesC& aClickThroughUrl ); + +public : + //channel name + HBufC* iChannelName; + //short description + HBufC* iShortDescription; + //url to fetch the preset from + HBufC* iChannelGetOperation; + //url to fetch the image from + RBuf iImgUrl; + //supported bitrates(were required for bitrate view) + //not in use now + TInt iBitrate1; + TInt iBitrate2; + TInt iBitrate3; + //channel id + TUint iChannelID; + TInt iSize; + + //For Advertisements + HBufC* iBannerUrl; + HBufC* iClickThroughUrl; + }; + +#endif // IRBROWSECHANNELITEMS_H +