--- a/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2MultiSearchHelper.h Thu Jul 15 18:22:55 2010 +0300
+++ b/predictivesearch/PcsAlgorithm/Algorithm2/inc/CPcsAlgorithm2MultiSearchHelper.h Thu Aug 19 09:41:07 2010 +0300
@@ -64,33 +64,11 @@
* Filter subset results for multi query mode.
*/
void FilterResultsMultiL(CPcsAlgorithm2FilterHelper* aAlgorithmFilterHelper,
- RPointerArray<CPcsPoolElement>& searchSet,
- RPointerArray<CPsQuery>& searchQuery, TUint8 aFilteredDataMatch,
- TBool isGroupSearch, RArray<TInt>& aContactsInGroup,
- TInt keyboardMode);
-
- /**
- * Convert the search query to a string.
- * If the mode is ITU-T, character is converted to numeric.
- * If the mode is Qwerty, character is retained as is.
- */
- void ExtractQueryL(CPsQuery& aPsQuery, TDes& aOutput);
-
- /**
- * Convert the input search query to a string.
- * Mode is referred in the CPsQuery.
- * If the mode is ITU-T, character is converted to numeric.
- * If the mode is Qwerty, character is retained as is.
- */
- void ExtractQueryL(TDesC& aInput, CPsQuery& aPsQuery, TDes& aOutput);
- /**
- * Converts the input data to the key board mode specified by the query.
- * Mode is referred in the CPsQuery.
- * If the mode is ITU-T, data is converted to numeric.
- * If the mode is Qwerty, data is retained as is.
- */
- void ConvertdDataToKeyBoardModeL(CPsQuery* aQuery, TPtrC aInputData,
- TBuf<KPsQueryMaxLen>& aOutputData);
+ RPointerArray<CPcsPoolElement>& aSearchSet,
+ RPointerArray<CPsQuery>& aSearchQuery,
+ TUint8 aFilteredDataMatch,
+ TBool aIsGroupSearch,
+ const RArray<TInt>& aContactsInGroup);
public:
@@ -98,29 +76,24 @@
* Search Function for multi query
* Initials search feature
*/
- void SearchMultiL(const CPsSettings& aSettings, RPointerArray<CPsQuery>& aQuery,
- TBool isGroupSearch, RArray<TInt>& aContactsInGroup,
- RPointerArray<CPsData>& searchResults,
- RPointerArray<CPsPattern>& searchSeqs, TInt keyboardMode);
+ void SearchMultiL(const CPsSettings& aSettings,
+ RPointerArray<CPsQuery>& aQuery,
+ TBool aIsGroupSearch,
+ const RArray<TInt>& aContactsInGroup,
+ RPointerArray<CPsData>& aSearchResults,
+ RPointerArray<CPsPattern>& aSearchSeqs);
/**
* Funtion to Search matching sequences for multi query
*/
void SearchMatchSeqMultiL(RPointerArray<CPsQuery>& aPsQuery,
- TDesC& aData, RPointerArray<TDesC>& aMatchSet,
+ const TDesC& aData,
+ RPointerArray<TDesC>& aMatchSet,
RArray<TPsMatchLocation>& aMatchLocation);
private:
/**
- * Constructs a bit pattern using the required/supported data fields
- * For example, 6, 4 and 27 are supported fields <-- 00000111
- * 6 and 4 are required fields <-- 00000011
- * Bit pattern returned is 00000011.
- */
- TUint8 FilterDataFieldsL(RArray<TInt>& aRequiredDataFields,
- RArray<TInt>& aSupportedDataFields);
- /**
* Set the bits corresponding to word matches
*
* @param aIndex Index of data element
@@ -155,12 +128,6 @@
*/
RPointerArray<CPsQuery> MultiQueryL(CPsQuery& aQuery);
- /**
- * Convert the search query (multiple) to a list
- */
- void ConvertQueryToListL(RPointerArray<CPsQuery>& aSearchQuery,
- RPointerArray<HBufC>& aQueryList);
-
private:
/**
@@ -183,7 +150,7 @@
/**
* Pointer to key map instance. Not owned.
*/
- CPcsKeyMap* keyMap;
+ CPcsKeyMap* iKeyMap;
/**
* Array of result sets from different data stores.
@@ -195,6 +162,11 @@
* Array of word macthes.
*/
TUint8 iWordMatches[MAX_DATA_FIELDS];
+
+ /**
+ * Counter of the matched contacts
+ */
+ TInt iMaxCount;
};
#endif // C_PCS_ALGORITHM_2_MULTI_SEARCH_HELPER