diff options
author | Maciej S. Szmigiero <maciej.szmigiero@oracle.com> | 2023-01-05 20:47:24 +0100 |
---|---|---|
committer | Maciej S. Szmigiero <maciej.szmigiero@oracle.com> | 2023-01-15 13:50:23 +0100 |
commit | cb66669cff959046c8ef02abe13fc4f1a68660c5 (patch) | |
tree | d969ebeecb694d25b007068242916f435d77c7f0 /src/gclue-static-source.h | |
parent | 0cc334a44ed0384785379996e7f20e85f26e624f (diff) | |
download | geoclue-cb66669cff959046c8ef02abe13fc4f1a68660c5.tar.gz |
Add static location source
There were many requests to provide a static location source for systems
which don't normally move but where the existing location sources provide
poor location estimate.
An example of such system would be a desktop PC without WiFi or 3G modem.
So let's add a source that reads location from "geolocation" file in
@sysconfdir@ (normally /etc) to cover this use case.
This file is constantly monitored for changes during Geoclue operation
and the reported static location is updated accordingly.
The geoclue(5) man page should be consulted for the format description of
this file.
Diffstat (limited to 'src/gclue-static-source.h')
-rw-r--r-- | src/gclue-static-source.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/gclue-static-source.h b/src/gclue-static-source.h new file mode 100644 index 0000000..acf0f62 --- /dev/null +++ b/src/gclue-static-source.h @@ -0,0 +1,40 @@ +/* vim: set et ts=8 sw=8: */ +/* + * Copyright © 2022,2023 Oracle and/or its affiliates. + * + * Geoclue is free software; you can redistribute it and/or modify it under + * the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * Geoclue is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more + * details. + * + * You should have received a copy of the GNU General Public License along + * with Geoclue; if not, write to the Free Software Foundation, Inc., + * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * + */ + +#ifndef GCLUE_STATIC_SOURCE_H +#define GCLUE_STATIC_SOURCE_H + +#include <glib.h> +#include "gclue-location-source.h" + +G_BEGIN_DECLS + +#define GCLUE_TYPE_STATIC_SOURCE gclue_static_source_get_type () + +G_DECLARE_FINAL_TYPE (GClueStaticSource, + gclue_static_source, + GCLUE, STATIC_SOURCE, + GClueLocationSource) + +GClueStaticSource *gclue_static_source_get_singleton (GClueAccuracyLevel level); + +G_END_DECLS + +#endif /* GCLUE_STATIC_SOURCE_H */ |