86 TInt isFilterPresent = 0; |
86 TInt isFilterPresent = 0; |
87 TBool isEntryRequested = EFalse; |
87 TBool isEntryRequested = EFalse; |
88 TInt i; |
88 TInt i; |
89 if(contExtInfo!=NULL) |
89 if(contExtInfo!=NULL) |
90 { |
90 { |
91 if((isFilterPresent>0 && isEntryRequested && iHystRadiusArray.Count()>0) || (iHystRadiusArray.Count()>0 && isFilterPresent==0 )) |
91 if( iHystRadiusArray.Count()>0) |
92 { |
92 { |
93 isFilterPresent++; |
93 isFilterPresent++; |
94 isEntryRequested=EFalse; |
94 isEntryRequested=EFalse; |
95 for(i=0;i<iHystRadiusArray.Count();i++) |
95 for(i=0;i<iHystRadiusArray.Count();i++) |
96 { |
96 { |
102 |
102 |
103 } |
103 } |
104 } |
104 } |
105 |
105 |
106 |
106 |
107 if((isFilterPresent>0 && isEntryRequested && iTriggerFiredArray.Count()>0) || (iTriggerFiredArray.Count()>0 && isFilterPresent==0 )) |
107 if((isFilterPresent>0 && isEntryRequested ) || isFilterPresent==0 ) |
108 { |
108 { |
|
109 if(iTriggerFiredArray.Count()>0) |
|
110 { |
109 isFilterPresent++; |
111 isFilterPresent++; |
110 isEntryRequested=EFalse; |
112 isEntryRequested=EFalse; |
111 for(i=0;i<iTriggerFiredArray.Count();i++) |
113 for(i=0;i<iTriggerFiredArray.Count();i++) |
112 { |
114 { |
113 if(contExtInfo->IsTriggerFired()==iTriggerFiredArray[i]) |
115 if(contExtInfo->IsTriggerFired()==iTriggerFiredArray[i]) |
180 switch(filter->Type()) |
183 switch(filter->Type()) |
181 { |
184 { |
182 case CLbtTriggerFilterBase::EFilterByAttribute: |
185 case CLbtTriggerFilterBase::EFilterByAttribute: |
183 { |
186 { |
184 CLbtContainerAttrFilter* attrFilter = CLbtContainerAttrFilter::NewL(filter,NULL); |
187 CLbtContainerAttrFilter* attrFilter = CLbtContainerAttrFilter::NewL(filter,NULL); |
185 iFilterArray.Append(attrFilter); |
188 CleanupStack::PushL( attrFilter ); |
|
189 iFilterArray.AppendL(attrFilter); |
|
190 CleanupStack::Pop( attrFilter ); |
186 break; |
191 break; |
187 } |
192 } |
188 case CLbtTriggerFilterBase::EFilterByArea: |
193 case CLbtTriggerFilterBase::EFilterByArea: |
189 { |
194 { |
190 CLbtContainerAreaFilter* areaFilter = CLbtContainerAreaFilter::NewL(filter,NULL); |
195 CLbtContainerAreaFilter* areaFilter = CLbtContainerAreaFilter::NewL(filter,NULL); |
191 iFilterArray.Append(areaFilter); |
196 CleanupStack::PushL( areaFilter ); |
|
197 iFilterArray.AppendL(areaFilter); |
|
198 CleanupStack::Pop( areaFilter ); |
192 break; |
199 break; |
193 } |
200 } |
194 case CLbtTriggerFilterBase::EFilterComposite: |
201 case CLbtTriggerFilterBase::EFilterComposite: |
195 { |
202 { |
196 CLbtContainerCompFilter* compFilter = CLbtContainerCompFilter::NewL(filter,NULL); |
203 CLbtContainerCompFilter* compFilter = CLbtContainerCompFilter::NewL(filter,NULL); |
197 iFilterArray.Append(compFilter); |
204 CleanupStack::PushL( compFilter ); |
|
205 iFilterArray.AppendL(compFilter); |
|
206 CleanupStack::Pop( compFilter ); |
198 break; |
207 break; |
199 } |
208 } |
200 } |
209 } |
201 CleanupStack::Pop(filter); // ownership taken by the container filters |
210 CleanupStack::Pop(filter); // ownership taken by the container filters |
202 } |
211 } |