956 |
956 |
957 TN_DEBUG3( "CThumbAGProcessor::QueryL() - fill end iGenerationQueue == %d, iQueryQueue == %d", iGenerationQueue.Count(), iQueryQueue.Count() ); |
957 TN_DEBUG3( "CThumbAGProcessor::QueryL() - fill end iGenerationQueue == %d, iQueryQueue == %d", iGenerationQueue.Count(), iQueryQueue.Count() ); |
958 |
958 |
959 CMdEObjectDef& objDef = iDefNamespace->GetObjectDefL( MdeConstants::Object::KBaseObject ); |
959 CMdEObjectDef& objDef = iDefNamespace->GetObjectDefL( MdeConstants::Object::KBaseObject ); |
960 iQuery = iMdESession->NewObjectQueryL( *iDefNamespace, objDef, this ); |
960 iQuery = iMdESession->NewObjectQueryL( *iDefNamespace, objDef, this ); |
961 iQuery->SetResultMode( EQueryResultModeItem ); |
961 |
962 |
962 if(iQuery) |
963 CMdELogicCondition& rootCondition = iQuery->Conditions(); |
963 { |
964 rootCondition.SetOperator( ELogicConditionOperatorAnd ); |
964 iQuery->SetResultMode( EQueryResultModeItem ); |
965 |
965 |
966 // add IDs |
966 CMdELogicCondition& rootCondition = iQuery->Conditions(); |
967 CleanupClosePushL( iQueryQueue ); |
967 rootCondition.SetOperator( ELogicConditionOperatorAnd ); |
968 rootCondition.AddObjectConditionL( iQueryQueue ); |
968 |
969 CleanupStack::Pop( &iQueryQueue ); |
969 // add IDs |
970 |
970 CleanupClosePushL( iQueryQueue ); |
971 // add object type conditions |
971 rootCondition.AddObjectConditionL( iQueryQueue ); |
972 if (!(iModify || iUnknown)) |
972 CleanupStack::Pop( &iQueryQueue ); |
973 { |
973 |
974 CMdELogicCondition& objDefCondition = rootCondition.AddLogicConditionL( ELogicConditionOperatorOr ); |
974 // add object type conditions |
975 |
975 if (!(iModify || iUnknown)) |
976 if (iAutoImage) |
976 { |
977 { |
977 CMdELogicCondition& objDefCondition = rootCondition.AddLogicConditionL( ELogicConditionOperatorOr ); |
978 CMdEObjectDef& imageDef = iDefNamespace->GetObjectDefL( MdeConstants::Image::KImageObject ); |
978 |
979 objDefCondition.AddObjectConditionL( imageDef ); |
979 if (iAutoImage) |
980 } |
980 { |
981 if (iAutoVideo) |
981 CMdEObjectDef& imageDef = iDefNamespace->GetObjectDefL( MdeConstants::Image::KImageObject ); |
982 { |
982 objDefCondition.AddObjectConditionL( imageDef ); |
983 CMdEObjectDef& videoDef = iDefNamespace->GetObjectDefL( MdeConstants::Video::KVideoObject ); |
983 } |
984 objDefCondition.AddObjectConditionL( videoDef ); |
984 if (iAutoVideo) |
985 } |
985 { |
986 if (iAutoAudio) |
986 CMdEObjectDef& videoDef = iDefNamespace->GetObjectDefL( MdeConstants::Video::KVideoObject ); |
987 { |
987 objDefCondition.AddObjectConditionL( videoDef ); |
988 CMdEObjectDef& audioDef = iDefNamespace->GetObjectDefL( MdeConstants::Audio::KAudioObject ); |
988 } |
989 objDefCondition.AddObjectConditionL( audioDef ); |
989 if (iAutoAudio) |
990 } |
990 { |
991 } |
991 CMdEObjectDef& audioDef = iDefNamespace->GetObjectDefL( MdeConstants::Audio::KAudioObject ); |
992 |
992 objDefCondition.AddObjectConditionL( audioDef ); |
993 iQuery->FindL(); |
993 } |
|
994 } |
|
995 |
|
996 iQuery->FindL(); |
|
997 } |
|
998 else |
|
999 { |
|
1000 iQueryActive = EFalse; |
|
1001 } |
994 |
1002 |
995 TN_DEBUG1( "CThumbAGProcessor::QueryL() - end" ); |
1003 TN_DEBUG1( "CThumbAGProcessor::QueryL() - end" ); |
996 } |
1004 } |
997 |
1005 |
998 |
1006 |
1034 CMdEObjectDef& audioObjDef = iDefNamespace->GetObjectDefL( MdeConstants::Audio::KAudioObject ); |
1042 CMdEObjectDef& audioObjDef = iDefNamespace->GetObjectDefL( MdeConstants::Audio::KAudioObject ); |
1035 |
1043 |
1036 CMdEObjectDef& objDef = iDefNamespace->GetObjectDefL( MdeConstants::Object::KBaseObject); |
1044 CMdEObjectDef& objDef = iDefNamespace->GetObjectDefL( MdeConstants::Object::KBaseObject); |
1037 iQueryPlaceholders = iMdESession->NewObjectQueryL( *iDefNamespace, objDef, this ); |
1045 iQueryPlaceholders = iMdESession->NewObjectQueryL( *iDefNamespace, objDef, this ); |
1038 |
1046 |
1039 iQueryPlaceholders->SetResultMode( EQueryResultModeItem ); |
1047 if(iQueryPlaceholders) |
1040 |
1048 { |
1041 CMdELogicCondition& rootCondition = iQueryPlaceholders->Conditions(); |
1049 iQueryPlaceholders->SetResultMode( EQueryResultModeItem ); |
1042 rootCondition.SetOperator( ELogicConditionOperatorOr ); |
1050 |
1043 |
1051 CMdELogicCondition& rootCondition = iQueryPlaceholders->Conditions(); |
1044 CMdEObjectCondition& imagePHObjectCondition = rootCondition.AddObjectConditionL(imageObjDef); |
1052 rootCondition.SetOperator( ELogicConditionOperatorOr ); |
1045 imagePHObjectCondition.SetPlaceholderOnly( ETrue ); |
1053 |
1046 imagePHObjectCondition.SetNotPresent( aPresent ); |
1054 CMdEObjectCondition& imagePHObjectCondition = rootCondition.AddObjectConditionL(imageObjDef); |
1047 |
1055 CleanupStack::PushL( &imagePHObjectCondition ); |
1048 CMdEObjectCondition& videoPHObjectCondition = rootCondition.AddObjectConditionL(videoObjDef); |
1056 imagePHObjectCondition.SetPlaceholderOnly( ETrue ); |
1049 videoPHObjectCondition.SetPlaceholderOnly( ETrue ); |
1057 imagePHObjectCondition.SetNotPresent( aPresent ); |
1050 videoPHObjectCondition.SetNotPresent( aPresent ); |
1058 |
1051 |
1059 CMdEObjectCondition& videoPHObjectCondition = rootCondition.AddObjectConditionL(videoObjDef); |
1052 CMdEObjectCondition& audioPHObjectCondition = rootCondition.AddObjectConditionL(audioObjDef); |
1060 CleanupStack::PushL( &videoPHObjectCondition ); |
1053 audioPHObjectCondition.SetPlaceholderOnly( ETrue ); |
1061 videoPHObjectCondition.SetPlaceholderOnly( ETrue ); |
1054 audioPHObjectCondition.SetNotPresent( aPresent ); |
1062 videoPHObjectCondition.SetNotPresent( aPresent ); |
1055 |
1063 |
1056 iQueryPlaceholders->FindL(KMaxTInt, KMaxQueryBatchSize); |
1064 CMdEObjectCondition& audioPHObjectCondition = rootCondition.AddObjectConditionL(audioObjDef); |
1057 |
1065 CleanupStack::PushL( &audioPHObjectCondition ); |
|
1066 audioPHObjectCondition.SetPlaceholderOnly( ETrue ); |
|
1067 audioPHObjectCondition.SetNotPresent( aPresent ); |
|
1068 |
|
1069 iQueryPlaceholders->FindL(KMdEQueryDefaultMaxCount, KMaxQueryBatchSize); |
|
1070 |
|
1071 CleanupStack::Pop(3, &imagePHObjectCondition ); |
|
1072 } |
|
1073 |
1058 TN_DEBUG1( "CThumbAGProcessor::QueryPlaceholdersL - end" ); |
1074 TN_DEBUG1( "CThumbAGProcessor::QueryPlaceholdersL - end" ); |
1059 } |
1075 } |
1060 |
1076 |
1061 |
1077 |
1062 // --------------------------------------------------------------------------- |
1078 // --------------------------------------------------------------------------- |
1877 |
1893 |
1878 CMdELogicCondition& rootCondition = iQueryAllItems->Conditions(); |
1894 CMdELogicCondition& rootCondition = iQueryAllItems->Conditions(); |
1879 rootCondition.SetOperator( ELogicConditionOperatorOr ); |
1895 rootCondition.SetOperator( ELogicConditionOperatorOr ); |
1880 |
1896 |
1881 CMdEObjectCondition& imageObjectCondition = rootCondition.AddObjectConditionL(imageObjDef); |
1897 CMdEObjectCondition& imageObjectCondition = rootCondition.AddObjectConditionL(imageObjDef); |
|
1898 CleanupStack::PushL( &imageObjectCondition ); |
1882 |
1899 |
1883 CMdEObjectCondition& videoObjectCondition = rootCondition.AddObjectConditionL(videoObjDef); |
1900 CMdEObjectCondition& videoObjectCondition = rootCondition.AddObjectConditionL(videoObjDef); |
|
1901 CleanupStack::PushL( &videoObjectCondition ); |
1884 |
1902 |
1885 CMdEObjectCondition& audioObjectCondition = rootCondition.AddObjectConditionL(audioObjDef); |
1903 CMdEObjectCondition& audioObjectCondition = rootCondition.AddObjectConditionL(audioObjDef); |
1886 |
1904 CleanupStack::PushL( &audioObjectCondition ); |
1887 iQueryAllItems->FindL(KMaxTInt, KMaxQueryBatchSize); |
1905 |
|
1906 iQueryAllItems->FindL(KMdEQueryDefaultMaxCount, KMaxQueryBatchSize); |
|
1907 |
|
1908 CleanupStack::Pop(3, &imageObjectCondition); |
1888 |
1909 |
1889 TN_DEBUG1( "CThumbAGProcessor::QueryAllItemsL - end" ); |
1910 TN_DEBUG1( "CThumbAGProcessor::QueryAllItemsL - end" ); |
1890 } |
1911 } |
1891 |
1912 |
1892 // ----------------------------------------------------------------------------- |
1913 // ----------------------------------------------------------------------------- |