epoc32/include/mw/epos_cposlmidlistcriteria.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
     1 /*
     2 * Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies). 
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     5 * under the terms of "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     8 *
     9 * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    11 *
    12 * Contributors:
    13 *
    14 * Description:  CPosLmIdListCriteria class
    15 *
    16 */
    17 
    18 
    19 #ifndef CPOSLMIDLISTCRITERIA_H
    20 #define CPOSLMIDLISTCRITERIA_H
    21 
    22 #include <e32base.h>
    23 #include <EPos_Landmarks.h>
    24 #include "EPos_CPosLmSearchCriteria.h"
    25 
    26 /**
    27 *  Landmark ID list search criterion.
    28 *
    29 *  This criterion is used if the client only wants to search a subset of the
    30 *  landmarks in the database.
    31 *
    32 *  This criterion must be combined with other search criteria using a
    33 *  @ref CPosLmCompositeCriteria. It is of no use on its own. If it is not
    34 *  combined with another criterion,
    35 *  @ref CPosLandmarkSearch::StartLandmarkSearchL will fail with error code
    36 *  @p KErrArgument.
    37 *
    38 *  @p Example: If this criterion is combined with a @ref CPosLmTextCriteria,
    39 *  the search operation searches the landmarks specified in the ID list
    40 *  criterion and returns those which match the given text string.
    41 *
    42 *  Only one ID list criterion is allowed in each composite criterion, otherwise
    43 *  @ref CPosLandmarkSearch::StartLandmarkSearchL will fail with error code
    44 *  @p KErrArgument.
    45 *
    46 *  If the criterion does not contain any landmark IDs,
    47 *  @ref CPosLandmarkSearch::StartLandmarkSearchL will fail with error code
    48 *  @p KErrArgument.
    49 *
    50 *  @lib eposlmsearchlib.lib
    51 *  @since S60 3.0
    52 */
    53 class CPosLmIdListCriteria : public CPosLmSearchCriteria
    54     {
    55     public:
    56 
    57         /**
    58         * Two-phased constructor.
    59         *
    60         * @returns A new instance of this class.
    61         */
    62         IMPORT_C static CPosLmIdListCriteria* NewLC();
    63 
    64         /**
    65         * Destructor
    66         */
    67         IMPORT_C virtual ~CPosLmIdListCriteria();
    68 
    69     public:
    70 
    71         /**
    72         * Sets the IDs of the landmarks which should be included in the search.
    73         *
    74         * @param[in] aIdArray The IDs of the landmarks which should be included
    75         *   in the search.
    76         */
    77         IMPORT_C void SetLandmarkIdsL( const RArray<TPosLmItemId>&  aIdArray );
    78 
    79         /**
    80         * Retrieves the list of IDs of the landmarks which should be included
    81         * in the search.
    82         *
    83         * @param[out] aIdArray On return, contains the IDs of the landmarks which
    84         *   should be included in the search.
    85         */
    86         IMPORT_C void GetLandmarkIdsL( RArray<TPosLmItemId>&  aIdArray ) const;
    87 
    88     private:
    89 
    90         // C++ constructor
    91         CPosLmIdListCriteria();
    92 
    93         // Prohibit copy constructor
    94         CPosLmIdListCriteria( const CPosLmIdListCriteria& );
    95         // Prohibit assigment operator
    96         CPosLmIdListCriteria& operator= ( const CPosLmIdListCriteria& );
    97 
    98     private:
    99 
   100         RArray<TPosLmItemId> iIdArray;
   101     };
   102 
   103 #endif      // CPOSLMIDLISTCRITERIA_H
   104 
   105