CPosLmAreaCriteria Class Reference

#include <mw/EPos_CPosLmAreaCriteria.h>

Link against: eposlmsearchlib.lib

class CPosLmAreaCriteria : public CPosLmSearchCriteria

Inherits from

Detailed Description

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.

Since
S60 3.0

Constructor & Destructor Documentation

~CPosLmAreaCriteria ( )

~CPosLmAreaCriteria()[virtual]

Destructor.

Member Function Documentation

GetSearchArea ( TReal64 &, TReal64 &, TReal64 &, TReal64 & )

IMPORT_C voidGetSearchArea(TReal64 &aSouthLatitude,
TReal64 &aNorthLatitude,
TReal64 &aWestLongitude,
TReal64 &aEastLongitude
)const

Returns the search area.

ParameterDescription
aSouthLatitudeThe southern latitude border of the search area.
aNorthLatitudeThe northern latitude border of the search area.
aWestLongitudeThe western longitude border of the search area.
aEastLongitudeThe eastern longitude border of the search area.

NewLC ( const TReal64 &, const TReal64 &, const TReal64 &, const TReal64 & )

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.

If one of the parameters is out of range, this function fails with error code KErrArgument. The correct ranges are:
  1. -90 =< aSouthLatitude =< aNorthLatitude =< 90

  2. -180 <= aWestLongitude < 180

  3. -180 <= aEastLongitude <= 180

ParameterDescription
aSouthLatitudeThe southern latitude border of the search area.
aNorthLatitudeThe northern latitude border of the search area.
aWestLongitudeThe western longitude border of the search area.
aEastLongitudeThe eastern longitude border of the search area.

Returns: A new instance of this class.

SetSearchArea ( const TReal64 &, const TReal64 &, const TReal64 &, const TReal64 & )

IMPORT_C TIntSetSearchArea(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.

If one of the parameters is out of range, this function fails with error code KErrArgument. The correct ranges are:
  1. -90 =< aSouthLatitude =< aNorthLatitude =< 90

  2. -180 <= aWestLongitude < 180

  3. -180 <= aEastLongitude <= 180

ParameterDescription
aSouthLatitudeThe southern latitude border of the search area.
aNorthLatitudeThe northern latitude border of the search area.
aWestLongitudeThe western longitude border of the search area.
aEastLongitudeThe eastern longitude border of the search area.

Returns: KErrNone if successful, KErrArgument if the input parameters are invalid, otherwise a system wide error code.