CPosLmItemIterator Class Reference

API published in: S60 3rd Ed

Link against: eposlandmarks.lib

Capability Information

Required Capabilities

None

Exceptions

The capability ReadUserData is required in:

CPosLandmarkDatabase::OpenL();

CPosLandmarkDatabase::OpenL( const TDesC & aDatabaseUri );

CPosLandmarkDatabase::InitializeL();

CPosLandmarkDatabase::ReadLandmarkLC( TPosLmItemId aLandmarkId );

CPosLandmarkDatabase::LandmarkIteratorL();

CPosLandmarkDatabase::LandmarkIteratorL( const TPosLmSortPref & aSortPref );

CPosLandmarkDatabase::AddLandmarkL( CPosLandmark & aLandmark );

CPosLandmarkDatabase::UpdateLandmarkL( const CPosLandmark & aLandmark );

CPosLandmarkDatabase::RemoveLandmarkL( TPosLmItemId aLandmarkId );

CPosLandmarkDatabase::RemoveLandmarksL( const RArray< TPosLmItemId > & aLandmarkIdArray );

CPosLandmarkDatabase::RemoveAllLandmarksL();

CPosLandmarkDatabase::ReadPartialLandmarkLC( TPosLmItemId aLandmarkId );

CPosLandmarkDatabase::PreparePartialLandmarksL( const RArray< TPosLmItemId > & aLandmarkIdArray );

CPosLandmarkDatabase::SizeL();

CPosLandmarkDatabase::CompactL();

CPosLandmarkDatabase::NotifyDatabaseEvent( TPosLmEvent & aEvent, TRequestStatus & aStatus );

CPosLandmarkDatabase::CancelNotifyDatabaseEvent();

CPosLandmarkDatabase::ImportLandmarksL( CPosLandmarkParser& aLandmarkParser, TTransferOptions aTransferOptions );

CPosLandmarkDatabase::ImportLandmarksL( CPosLandmarkParser& aLandmarkParser, const RArray<TUint>& aLandmarkSelection, TTransferOptions aTransferOptions );

CPosLmCategoryManager::ReadCategoryLC( TPosLmItemId aCategoryId );

CPosLmCategoryManager::CategoryIteratorL( TCategorySortPref aSortPref );

CPosLmCategoryManager::ReferencedCategoryIteratorL( TCategorySortPref aSortPref )

CPosLmCategoryManager::AddCategoryL( CPosLandmarkCategory & aCategory );

CPosLmCategoryManager::UpdateCategoryL( const CPosLandmarkCategory & aCategory );

CPosLmCategoryManager::RemoveCategoryL( TPosLmItemId aCategoryId );

CPosLmCategoryManager::RemoveCategoriesL( const RArray< TPosLmItemId > & aCategoryIdArray );

CPosLmCategoryManager::AddCategoryToLandmarksL( TPosLmItemId aCategoryId, RArray< TPosLmItemId > & aLandmarkIdArray );

CPosLmCategoryManager::RemoveCategoryFromLandmarksL( TPosLmItemId aCategoryId, RArray< TPosLmItemId > & aLandmarkIdArray );

CPosLmCategoryManager::GetCategoryL( const TDesC & aCategoryName );

CPosLmCategoryManager::GetGlobalCategoryL( TPosLmGlobalCategory aGlobalCategory );

CPosLmCategoryManager::ResetGlobalCategoriesL();

The capability WriteUserData is required in:

CPosLandmarkDatabase::AddLandmarkL( CPosLandmark& aLandmark );

CPosLandmarkDatabase::UpdateLandmarkL( const CPosLandmark& aLandmark );

CPosLandmarkDatabase::RemoveLandmarkL( TPosLmItemId aLandmarkId );

CPosLandmarkDatabase::RemoveLandmarksL( const RArray<TPosLmItemId>& aLandmarkIdArray );

CPosLandmarkDatabase::RemoveAllLandmarksL();

CPosLandmarkDatabase::CompactL();

CPosLandmarkDatabase::ImportLandmarksL( CPosLandmarkParser& aLandmarkParser, TTransferOptions aTransferOptions );

CPosLandmarkDatabase::ImportLandmarksL( CPosLandmarkParser& aLandmarkParser, const RArray<TUint>& aLandmarkSelection, TTransferOptions aTransferOptions );

CPosLmCategoryManager::AddCategoryL( CPosLandmarkCategory & aCategory );

CPosLmCategoryManager::UpdateCategoryL( const CPosLandmarkCategory & aCategory );

CPosLmCategoryManager::RemoveCategoryL( TPosLmItemId aCategoryId );

CPosLmCategoryManager::RemoveCategoriesL( const RArray< TPosLmItemId > & aCategoryIdArray );

CPosLmCategoryManager::AddCategoryToLandmarksL( TPosLmItemId aCategoryId, RArray< TPosLmItemId > & aLandmarkIdArray );

CPosLmCategoryManager::RemoveCategoryFromLandmarksL( TPosLmItemId aCategoryId, RArray< TPosLmItemId > & aLandmarkIdArray );

CPosLmCategoryManager::ResetGlobalCategoriesL();

Other Information

The capability NetworkServices is required to work with remote databases.


#include <epos_cposlmitemiterator.h>

Detailed Description

Landmark item iterator.

This is an abstract base class for objects which iterates a set of database items in a single database.

A database item is an item which is stored in a landmark database, i.e. a landmark or a landmark category.

Note that an iterator either iterates categories or landmarks. The items are never mixed.

This class does not export a constructor. The instance is created by the operation which generates the item set to be iterated. The iterator may implement a caching scheme, but that scheme depends on what is iterated.


Public Member Functions

virtual IMPORT_C  ~CPosLmItemIterator ()
  Destructor.
virtual TPosLmItemId  NextL ()=0
  Returns the next database item ID in the iterated set.
virtual void  Reset ()=0
  Resets the database item iterator.
virtual TUint  NumOfItemsL ()=0
  Returns the number of database items which are iterated.
virtual void  GetItemIdsL (RArray< TPosLmItemId > &aIdArray, TInt aStartIndex, TInt aNumOfItems)=0
  Fetches a sequence of database items from the iterated set.

Protected Member Functions

IMPORT_C  CPosLmItemIterator ()

Constructor & Destructor Documentation

virtual IMPORT_C CPosLmItemIterator::~CPosLmItemIterator  )  [virtual]
 

Destructor.

IMPORT_C CPosLmItemIterator::CPosLmItemIterator  )  [protected]
 

Member Function Documentation

virtual void CPosLmItemIterator::GetItemIdsL RArray< TPosLmItemId > &  aIdArray,
TInt  aStartIndex,
TInt  aNumOfItems
[pure virtual]
 

Fetches a sequence of database items from the iterated set.

The client supplies an ID array which will be filled by this operation. The array will be reset before any items are added.

The client specifies which database item sequence to fetch by supplying a start index (0 is the first item) and the number of items to fetch.

Parameters:
[out]  aIdArray  On return contains the requested items.
[in]  aStartIndex  The index of the first item to fetch.
[in]  aNumOfItems  The number of items to fetch
Panic:
"Landmarks Client"-EPosSpecifiedIntervalLiesOutsideIteratedSet specified interval lies [partially] outside the iterated set.
virtual TPosLmItemId CPosLmItemIterator::NextL  )  [pure virtual]
 

Returns the next database item ID in the iterated set.

The first call will return the first database item ID in the set.

Returns:
The next database item ID, or KPosLmNullItemId if there are no more database items in the iterated set.
virtual TUint CPosLmItemIterator::NumOfItemsL  )  [pure virtual]
 

Returns the number of database items which are iterated.

Returns:
Number of items in the iterated database item set.
virtual void CPosLmItemIterator::Reset  )  [pure virtual]
 

Resets the database item iterator.

The next call to NextL will return the first database item ID in the iterated set.


The documentation for this class was generated from the following file:

Copyright © Nokia Corporation 2001-2008
Back to top