epoc32/include/mw/epos_cposlmidlistcriteria.h
branchSymbian2
changeset 2 2fe1408b6811
parent 1 666f914201fb
child 4 837f303aceeb
--- a/epoc32/include/mw/epos_cposlmidlistcriteria.h	Tue Nov 24 13:55:44 2009 +0000
+++ b/epoc32/include/mw/epos_cposlmidlistcriteria.h	Tue Mar 16 16:12:26 2010 +0000
@@ -1,1 +1,105 @@
-epos_cposlmidlistcriteria.h
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
+* which accompanies this distribution, and is available
+* at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  CPosLmIdListCriteria class
+*
+*/
+
+
+#ifndef CPOSLMIDLISTCRITERIA_H
+#define CPOSLMIDLISTCRITERIA_H
+
+#include <e32base.h>
+#include <EPos_Landmarks.h>
+#include "EPos_CPosLmSearchCriteria.h"
+
+/**
+*  Landmark ID list search criterion.
+*
+*  This criterion is used if the client only wants to search a subset of the
+*  landmarks in the database.
+*
+*  This criterion must be combined with other search criteria using a
+*  @ref CPosLmCompositeCriteria. It is of no use on its own. If it is not
+*  combined with another criterion,
+*  @ref CPosLandmarkSearch::StartLandmarkSearchL will fail with error code
+*  @p KErrArgument.
+*
+*  @p Example: If this criterion is combined with a @ref CPosLmTextCriteria,
+*  the search operation searches the landmarks specified in the ID list
+*  criterion and returns those which match the given text string.
+*
+*  Only one ID list criterion is allowed in each composite criterion, otherwise
+*  @ref CPosLandmarkSearch::StartLandmarkSearchL will fail with error code
+*  @p KErrArgument.
+*
+*  If the criterion does not contain any landmark IDs,
+*  @ref CPosLandmarkSearch::StartLandmarkSearchL will fail with error code
+*  @p KErrArgument.
+*
+*  @lib eposlmsearchlib.lib
+*  @since S60 3.0
+*/
+class CPosLmIdListCriteria : public CPosLmSearchCriteria
+    {
+    public:
+
+        /**
+        * Two-phased constructor.
+        *
+        * @returns A new instance of this class.
+        */
+        IMPORT_C static CPosLmIdListCriteria* NewLC();
+
+        /**
+        * Destructor
+        */
+        IMPORT_C virtual ~CPosLmIdListCriteria();
+
+    public:
+
+        /**
+        * Sets the IDs of the landmarks which should be included in the search.
+        *
+        * @param[in] aIdArray The IDs of the landmarks which should be included
+        *   in the search.
+        */
+        IMPORT_C void SetLandmarkIdsL( const RArray<TPosLmItemId>&  aIdArray );
+
+        /**
+        * Retrieves the list of IDs of the landmarks which should be included
+        * in the search.
+        *
+        * @param[out] aIdArray On return, contains the IDs of the landmarks which
+        *   should be included in the search.
+        */
+        IMPORT_C void GetLandmarkIdsL( RArray<TPosLmItemId>&  aIdArray ) const;
+
+    private:
+
+        // C++ constructor
+        CPosLmIdListCriteria();
+
+        // Prohibit copy constructor
+        CPosLmIdListCriteria( const CPosLmIdListCriteria& );
+        // Prohibit assigment operator
+        CPosLmIdListCriteria& operator= ( const CPosLmIdListCriteria& );
+
+    private:
+
+        RArray<TPosLmItemId> iIdArray;
+    };
+
+#endif      // CPOSLMIDLISTCRITERIA_H
+
+