Positioning Plug-in API (PSY API)

The Positioning Plug-in API defines the framework classes needed to implement Positioning Plug-ins (PSYs).

This API is intended for device creators who develop their own PSYs.

API description

The Positioning Plug-in API provides framework classes for developing PSYs.

The Location Server (eposserver.exe) loads and uses a PSY implementation to obtain position information.

In order to implement a PSY, a licensee must define new subclasses of the main API class CPositioner.

A PSY must also implement the Positioning Plug-in Information API to publish information about its capabilities to the Location Framework.

API summary

Figure 1 shows the classes of the PSY API.

Figure 1. Figure 1. PSY API class diagram.

The following table gives a brief description of the API classes.

Class Name Description Header file

CPositioner

CPositioner is the main class in the Positioning Plug-in API.

A PSY must implement a CPositioner subclass to handle positioning requests.

CPositioner defines two pure virtual functions:

A PSY must implement these two functions.

This class also defines advanced features, such as for location tracking, for which it provides a default implementation.

EPos_CPositioner.h

MPositionerStatus

MPositionerStatus provides an interface through which a PSY reports its status.

Class TPositionModuleStatus of the Location Acquisition API defines the states that a PSY can report.

EPos_MPositionerStatus.h

Libraries

API classes are packaged in epospluginfw.dll. Clients link with epospluginfw.lib

Capabilities

PSYs are ECOM plug-ins loaded by the LBS Location Framework. They must be declared as having the capability ALL -TCB.