Geoclue Reference Manual | ||||
---|---|---|---|---|
Top | Description | Object Hierarchy | Signals |
Synopsis
#define GEOCLUE_POSITION_INTERFACE_NAME GeocluePosition; void (*GeocluePositionCallback) (GeocluePosition *position
,GeocluePositionFields fields
,int timestamp
,double latitude
,double longitude
,double altitude
,GeoclueAccuracy *accuracy
,GError *error
,gpointer userdata
); GeocluePositionClass; GeocluePositionFields geoclue_position_get_position (GeocluePosition *position
,int *timestamp
,double *latitude
,double *longitude
,double *altitude
,GeoclueAccuracy **accuracy
,GError **error
); void geoclue_position_get_position_async (GeocluePosition *position
,GeocluePositionCallback callback
,gpointer userdata
); GeocluePosition * geoclue_position_new (const char *service
,const char *path
);
Description
GeocluePosition contains position-related methods and signals. It is part of the Geoclue public C client API which uses D-Bus to communicate with the actual provider.
After a GeocluePosition is created with geoclue_position_new()
or
using geoclye_master_client_create_position()
, the
geoclue_position_get_position()
and geoclue_position_get_position_async()
method and the position-changed signal can be used to obtain the current position.
Details
GEOCLUE_POSITION_INTERFACE_NAME
#define GEOCLUE_POSITION_INTERFACE_NAME "org.freedesktop.Geoclue.Position"
GeocluePositionCallback ()
void (*GeocluePositionCallback) (GeocluePosition *position
,GeocluePositionFields fields
,int timestamp
,double latitude
,double longitude
,double altitude
,GeoclueAccuracy *accuracy
,GError *error
,gpointer userdata
);
Callback function for geoclue_position_get_position_async()
.
|
A GeocluePosition object |
|
A GeocluePositionFields bitfield representing the validity of the position values |
|
Time of position measurement (Unix timestamp) |
|
Latitude in degrees |
|
Longitude in degrees |
|
Altitude in meters |
|
Accuracy of measurement as GeoclueAccuracy |
|
Error as Gerror or NULL
|
|
User data pointer set in geoclue_position_get_position_async()
|
GeocluePositionClass
typedef struct { GeoclueProviderClass provider_class; void (* position_changed) (GeocluePosition *position, GeocluePositionFields fields, int timestamp, double latitude, double longitude, double altitude, GeoclueAccuracy *accuracy); } GeocluePositionClass;
geoclue_position_get_position ()
GeocluePositionFields geoclue_position_get_position (GeocluePosition *position
,int *timestamp
,double *latitude
,double *longitude
,double *altitude
,GeoclueAccuracy **accuracy
,GError **error
);
Obtains the current position. timestamp
will contain the time of
the actual position measurement. accuracy
is a rough estimate of the
accuracy of the current position.
If the caller is not interested in some values, the pointers can be
left NULL
.
|
A GeocluePosition object |
|
Pointer to returned time of position measurement (Unix timestamp) or NULL
|
|
Pointer to returned latitude in degrees or NULL
|
|
Pointer to returned longitude in degrees or NULL
|
|
Pointer to returned altitude in meters or NULL
|
|
Pointer to returned GeoclueAccuracy or NULL
|
|
Pointer to returned Gerror or NULL
|
Returns : |
A GeocluePositionFields bitfield representing the validity of the position values. |
geoclue_position_get_position_async ()
void geoclue_position_get_position_async (GeocluePosition *position
,GeocluePositionCallback callback
,gpointer userdata
);
Function returns (essentially) immediately and calls callback
when current position
is available or when D-Bus timeouts.
|
A GeocluePosition object |
|
A GeocluePositionCallback function that should be called when return values are available |
|
pointer for user specified data |
geoclue_position_new ()
GeocluePosition * geoclue_position_new (const char *service
,const char *path
);
Creates a GeocluePosition with given D-Bus service name and path.
|
D-Bus service name |
|
D-Bus path name |
Returns : |
Pointer to a new GeocluePosition |
Signal Details
The "position-changed"
signal
void user_function (GeocluePosition *position,
gint fields,
gint timestamp,
gdouble latitude,
gdouble longitude,
gdouble altitude,
gpointer accuracy,
gpointer user_data) : No Recursion
The position-changed signal is emitted each time the position changes. Clients should note that not all providers support signals.
|
the GeocluePosition object emitting the signal |
|
A GeocluePositionFields bitfield representing the validity of the position values |
|
Time of position measurement (Unix timestamp) |
|
Latitude in degrees |
|
Longitude in degrees |
|
Altitude in meters |
|
Accuracy of measurement as GeoclueAccuracy |
|
user data set when the signal handler was connected. |