X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=src%2Fplugins%2Fradar.h;h=e64ed8130c2cece2ffb66422a19ce928b7c579c3;hb=72842797f3fddb8ddb3c309ba9ceec889c4ec4e2;hp=ad8826bc0edd0b50fe73fb71dcd475acf1e501d0;hpb=d4d52d011600b56587a088760b734fbb52f6a588;p=aweather diff --git a/src/plugins/radar.h b/src/plugins/radar.h index ad8826b..e64ed81 100644 --- a/src/plugins/radar.h +++ b/src/plugins/radar.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2009-2010 Andy Spencer + * Copyright (C) 2009-2011 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 @@ -19,62 +19,51 @@ #define __RADAR_H__ #include -#include #include -#include +#include +#include "radar-info.h" +#include "level2.h" -#include "marching.h" +#define GRITS_TYPE_PLUGIN_RADAR (grits_plugin_radar_get_type ()) +#define GRITS_PLUGIN_RADAR(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GRITS_TYPE_PLUGIN_RADAR, GritsPluginRadar)) +#define GRITS_IS_PLUGIN_RADAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GRITS_TYPE_PLUGIN_RADAR)) +#define GRITS_PLUGIN_RADAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GRITS_TYPE_PLUGIN_RADAR, GritsPluginRadarClass)) +#define GRITS_IS_PLUGIN_RADAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GRITS_TYPE_PLUGIN_RADAR)) +#define GRITS_PLUGIN_RADAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GRITS_TYPE_PLUGIN_RADAR, GritsPluginRadarClass)) -/* TODO: convert */ -typedef struct { - char *name; - guint8 data[256][4]; -} colormap_t; -extern colormap_t colormaps[]; +typedef struct _GritsPluginRadar GritsPluginRadar; +typedef struct _GritsPluginRadarClass GritsPluginRadarClass; -#define GIS_TYPE_PLUGIN_RADAR (gis_plugin_radar_get_type ()) -#define GIS_PLUGIN_RADAR(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GIS_TYPE_PLUGIN_RADAR, GisPluginRadar)) -#define GIS_IS_PLUGIN_RADAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GIS_TYPE_PLUGIN_RADAR)) -#define GIS_PLUGIN_RADAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIS_TYPE_PLUGIN_RADAR, GisPluginRadarClass)) -#define GIS_IS_PLUGIN_RADAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIS_TYPE_PLUGIN_RADAR)) -#define GIS_PLUGIN_RADAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIS_TYPE_PLUGIN_RADAR, GisPluginRadarClass)) +typedef struct _RadarConus RadarConus; +typedef struct _RadarSite RadarSite; -typedef struct _GisPluginRadar GisPluginRadar; -typedef struct _GisPluginRadarClass GisPluginRadarClass; - -struct _GisPluginRadar { +struct _GritsPluginRadar { GObject parent_instance; /* instance members */ - GisViewer *viewer; - GisPrefs *prefs; - GtkWidget *config_body; - GtkWidget *progress_bar; - GtkWidget *progress_label; - SoupSession *soup; - guint time_changed_id; - guint location_changed_id; - - /* Private data for loading radars */ - char *cur_site; - char *cur_time; - Radar *cur_radar; - Sweep *cur_sweep; - colormap_t *cur_colormap; - guint cur_sweep_tex; - TRIANGLE *cur_triangles; - guint cur_num_triangles; + GritsViewer *viewer; + GritsPrefs *prefs; + GtkWidget *config; + guint tab_id; + AWeatherColormap *colormap; + GritsCallback *hud; + + GHashTable *sites; + GritsHttp *sites_http; + + RadarConus *conus; + GritsHttp *conus_http; }; -struct _GisPluginRadarClass { +struct _GritsPluginRadarClass { GObjectClass parent_class; }; -GType gis_plugin_radar_get_type(); +GType grits_plugin_radar_get_type(); /* Methods */ -GisPluginRadar *gis_plugin_radar_new(GisViewer *viewer, GisPrefs *prefs); +GritsPluginRadar *grits_plugin_radar_new(GritsViewer *viewer, GritsPrefs *prefs); /* Misc. RSL helpers */ #define RSL_FOREACH_VOL(radar, volume, count, index) \