#include <mw/EPos_CPosLmAreaCriteria.h>
class CPosLmAreaCriteria : public CPosLmSearchCriteria |
Public Member Functions | |
---|---|
virtual | ~CPosLmAreaCriteria() |
IMPORT_C void | GetSearchArea(TReal64 &, TReal64 &, TReal64 &, TReal64 &) |
IMPORT_C CPosLmAreaCriteria * | NewLC(const TReal64 &, const TReal64 &, const TReal64 &, const TReal64 &) |
IMPORT_C TInt | SetSearchArea(const TReal64 &, const TReal64 &, const TReal64 &, const TReal64 &) |
Inherited Enumerations | |
---|---|
CPosLmSearchCriteria:TCriteriaType |
Criterion for searching for landmarks which reside in a certain area.
The search area is defined by providing two latitude and two longitude values which specify the borders of the area. Note that this search does not consider landmark coverage radius, see CPosLandmark::GetCoverageRadius.
The search area is defined as a spherical rectangle, limited by two longitude borders (WestLongitude and EastLongitude) and two latitude borders (SouthLatitude and NorthLatitude).
It is required that -90 =< SouthLatitude =< NorthLatitude =< 90. WestLongitude must be in the interval [-180, 180), i.e. not including +180. EastLongitude must be in the interval [-180, 180], i.e. including +180. It is allowed that EastLongitude < WestLongitude. This defines an area which crosses the 180 meridian. The area definition is inclusive, i.e. landmarks which lie on the border of the area will be considered as matches. If WestLongitude = EastLongitude and NorthLatitude = SouthLatitude then only landmarks which match the longitude and latitude respectively, are considered to be matches. If WestLongitude = -180 and EastLongitude = +180, all longitudes are included in the search.
This criterion is only valid when searching for landmarks, i.e. if it is passed to CPosLandmarkSearch::StartCategorySearchL, the function will fail with error code KErrArgument.
IMPORT_C void | GetSearchArea | ( | TReal64 & | aSouthLatitude, |
TReal64 & | aNorthLatitude, | |||
TReal64 & | aWestLongitude, | |||
TReal64 & | aEastLongitude | |||
) | const |
Returns the search area.
Parameter | Description |
---|---|
aSouthLatitude | The southern latitude border of the search area. |
aNorthLatitude | The northern latitude border of the search area. |
aWestLongitude | The western longitude border of the search area. |
aEastLongitude | The eastern longitude border of the search area. |
IMPORT_C CPosLmAreaCriteria * | NewLC | ( | const TReal64 & | aSouthLatitude, |
const TReal64 & | aNorthLatitude, | |||
const TReal64 & | aWestLongitude, | |||
const TReal64 & | aEastLongitude | |||
) | [static] |
Two-phased constructor.
The input parameters specify the area to search as described in the class description.
-90 =< aSouthLatitude =< aNorthLatitude =< 90
-180 <= aWestLongitude < 180
-180 <= aEastLongitude <= 180
Parameter | Description |
---|---|
aSouthLatitude | The southern latitude border of the search area. |
aNorthLatitude | The northern latitude border of the search area. |
aWestLongitude | The western longitude border of the search area. |
aEastLongitude | The eastern longitude border of the search area. |
Returns: A new instance of this class.
IMPORT_C TInt | SetSearchArea | ( | const TReal64 & | aSouthLatitude, |
const TReal64 & | aNorthLatitude, | |||
const TReal64 & | aWestLongitude, | |||
const TReal64 & | aEastLongitude | |||
) |
Define the search area.
The input parameters specify the area to search as described in the class description.
-90 =< aSouthLatitude =< aNorthLatitude =< 90
-180 <= aWestLongitude < 180
-180 <= aEastLongitude <= 180
Parameter | Description |
---|---|
aSouthLatitude | The southern latitude border of the search area. |
aNorthLatitude | The northern latitude border of the search area. |
aWestLongitude | The western longitude border of the search area. |
aEastLongitude | The eastern longitude border of the search area. |
Returns: KErrNone if successful, KErrArgument if the input parameters are invalid, otherwise a system wide error code.