diff options
Diffstat (limited to 'src/location-geoclue2.h')
-rw-r--r-- | src/location-geoclue2.h | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/src/location-geoclue2.h b/src/location-geoclue2.h index c3c377b..2f04eea 100644 --- a/src/location-geoclue2.h +++ b/src/location-geoclue2.h @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License along with Redshift. If not, see <http://www.gnu.org/licenses/>. - Copyright (c) 2014 Jon Lund Steffensen <jonlst@gmail.com> + Copyright (c) 2014-2017 Jon Lund Steffensen <jonlst@gmail.com> */ #ifndef REDSHIFT_LOCATION_GEOCLUE2_H @@ -22,19 +22,34 @@ #include <stdio.h> +#include <glib.h> + #include "redshift.h" +typedef struct { + GMainLoop *loop; + GThread *thread; + GMutex lock; + int pipe_fd_read; + int pipe_fd_write; + int available; + int error; + float latitude; + float longitude; +} location_geoclue2_state_t; + -int location_geoclue2_init(void *state); -int location_geoclue2_start(void *state); -void location_geoclue2_free(void *state); +int location_geoclue2_init(location_geoclue2_state_t *state); +int location_geoclue2_start(location_geoclue2_state_t *state); +void location_geoclue2_free(location_geoclue2_state_t *state); void location_geoclue2_print_help(FILE *f); -int location_geoclue2_set_option(void *state, +int location_geoclue2_set_option(location_geoclue2_state_t *state, const char *key, const char *value); -int location_geoclue2_get_location(void *state, - location_t *loc); +int location_geoclue2_get_fd(location_geoclue2_state_t *state); +int location_geoclue2_handle(location_geoclue2_state_t *state, + location_t *location, int *available); #endif /* ! REDSHIFT_LOCATION_GEOCLUE2_H */ |