/*
* 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: ?Description
*
*/
#ifndef IRBROWSECATAGORYITEMS_H
#define IRBROWSECATAGORYITEMS_H
#include <e32base.h>
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
*CIRBrowseCatagoryItems* browse = CIRBrowseCatagoryItems::NewL()
*browse->SetXXX();
*browse->GetXXX()
* *browse = *browse2
*delete browse;
* @endcode
*
*/
class CIRBrowseCatagoryItems : public CBase
{
public :
/**
*CIRBrowseCatagoryItems::NewL()
*Static function
*standard two phased constructor
*@return CIRBrowseCatagoryItems*
*/
IMPORT_C static CIRBrowseCatagoryItems* NewL();
/**
*CIRBrowseCatagoryItems::NewL()
*Static function
*standard two phased constructor
*@return CIRBrowseCatagoryItems*
*/
IMPORT_C static CIRBrowseCatagoryItems* NewLC();
/**
*CIRBrowseCatagoryItems::ConstructL()
*standard second phase constructor
*/
void ConstructL() const;
/**
*CIRBrowseCatagoryItems::~CIRBrowseCatagoryItems()
*standard C++ destructor
*/
~CIRBrowseCatagoryItems();
/**
*CIRBrowseCatagoryItems::SetTextL()
*sets the category name and category id
**/
IMPORT_C void SetTextL(const TDesC& aCatName,const TDesC& aCatId);
/**
*CIRBrowseCatagoryItems::SetSize()
*sets the count of the no of items present under that type
*/
IMPORT_C void SetSize(const TDesC& aCatSize);
/**
*CIRBrowseCatagoryItems::SetGetOperation()
*sets the url that is used to get the next level of data
*/
IMPORT_C void SetGetOperation(const TDesC& aCatGetOperation);
/**
*CIRBrowseCatagoryItems::SetBannerUrl(const TDesC& aBannerUrl)
*Set data Banner Url
*@param TDesC
*/
IMPORT_C void SetBannerUrl(const TDesC& aBannerUrl);
/**
*CIRBrowseCatagoryItems::SetClickThroughUrl(const TDesC& aClickThroughUrl)
*Set data Banner Url
*@param TDesC
*/
IMPORT_C void SetClickThroughUrl(const TDesC& aClickThroughUrl);
/**
*CIRBrowseCatagoryItems::ExternalizeL()
*Externalizes the data from file
*@param RWriteStream
**/
IMPORT_C void ExternalizeL(RWriteStream& aStream) const;
/**
*CIRBrowseCatagoryItems::InternalizeL()
*Internalizes the data from file
*@param RWriteStream&
**/
IMPORT_C void InternalizeL(RReadStream& aStream);
public:
//category name
HBufC* iCatName;
//category id
HBufC* iCatId;
//get operation
HBufC* iCatGetOperation;
//no of entities
TInt iSize;
//For Advertisements
HBufC* iCatBannerUrl;
HBufC* iCatClickThroughUrl;
};
#endif// IRBROWSECATAGORYITEMS_H