X-Git-Url: http://pileus.org/git/?p=grits;a=blobdiff_plain;f=src%2Fgis-opengl.h;h=72d7b13bdf0fe62050ad28a4bbc190e06fce401e;hp=a0f612596e0a8541458f7911cd3e09ee5ace0f2b;hb=5e97f4c0721a5481afbb2d005538e896ac8baf5a;hpb=a2a902d978b6050289f7a92794fb1dc0aa2b5e26 diff --git a/src/gis-opengl.h b/src/gis-opengl.h index a0f6125..72d7b13 100644 --- a/src/gis-opengl.h +++ b/src/gis-opengl.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2009 Andy Spencer + * Copyright (C) 2009-2010 Andy Spencer * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -18,8 +18,6 @@ #ifndef __GIS_OPENGL_H__ #define __GIS_OPENGL_H__ -#include -#include #include /* Type macros */ @@ -34,25 +32,25 @@ typedef struct _GisOpenGL GisOpenGL; typedef struct _GisOpenGLClass GisOpenGLClass; #include "gis-viewer.h" -#include "gis-plugin.h" -#include "gis-tile.h" #include "roam.h" struct _GisOpenGL { - GtkDrawingArea parent_instance; + GisViewer parent_instance; /* instance members */ - GisViewer *viewer; - GisPlugins *plugins; + GTree *objects; + GMutex *objects_lock; RoamSphere *sphere; + GMutex *sphere_lock; guint sm_source[2]; + guint ue_source; /* for testing */ gboolean wireframe; }; struct _GisOpenGLClass { - GtkDrawingAreaClass parent_class; + GisViewerClass parent_class; /* class members */ }; @@ -60,28 +58,6 @@ struct _GisOpenGLClass { GType gis_opengl_get_type(void); /* Methods */ -GisOpenGL *gis_opengl_new(GisViewer *viewer, GisPlugins *plugins); - -void gis_opengl_center_position(GisOpenGL *opengl, - gdouble lat, gdouble lon, gdouble elev); - -void gis_opengl_project(GisOpenGL *opengl, - gdouble lat, gdouble lon, gdouble elev, - gdouble *px, gdouble *py, gdouble *pz); - -void gis_opengl_render_tile(GisOpenGL *opengl, GisTile *tile); - -void gis_opengl_render_tiles(GisOpenGL *opengl, GisTile *root); - -void gis_opengl_set_height_func(GisOpenGL *self, GisTile *tile, - RoamHeightFunc height_func, gpointer user_data, gboolean update); - -void gis_opengl_clear_height_func(GisOpenGL *self); - -void gis_opengl_redraw(GisOpenGL *opengl); - -void gis_opengl_begin(GisOpenGL *opengl); -void gis_opengl_end(GisOpenGL *opengl); -void gis_opengl_flush(GisOpenGL *opengl); +GisViewer *gis_opengl_new(GisPlugins *plugins, GisPrefs *prefs); #endif