Sweep *sweep = vol->sweep[si];
if (sweep == NULL || sweep->h.elev == 0) continue;
if (sweep->h.elev != elev) {
- g_message("adding elev");
cols++;
elev = sweep->h.elev;
char *dir = g_path_get_dirname(radar_file);
char *site = g_path_get_basename(dir);
g_free(dir);
+ g_debug("AWeatherRadar: load_radar - Loading new radar");
RSL_read_these_sweeps("all", NULL);
- if (self->cur_radar) {
- g_message("Freeing radar");
- RSL_free_radar(self->cur_radar);
- }
- g_message("Allocating radar");
Radar *radar = self->cur_radar = RSL_wsr88d_to_radar(radar_file, site);
if (radar == NULL) {
g_warning("fail to load radar: path=%s, site=%s", radar_file, site);
gchar *radar_file;
} decompressed_t;
-static void decompressed_cb(GPid pid, gint status, gpointer _self)
+static void decompressed_cb(GPid pid, gint status, gpointer _udata)
{
- decompressed_t *udata = _self;
+ decompressed_t *udata = _udata;
if (status != 0) {
g_warning("wsr88ddec exited with status %d", status);
return;
}
- // TODO: pass cur_file as params?
load_radar(udata->self, udata->radar_file);
+ g_spawn_close_pid(pid);
g_free(udata->radar_file);
g_free(udata);
}
decompressed_t *udata = g_malloc(sizeof(decompressed_t));
udata->self = self;
udata->radar_file = decompressed;
- g_message("File updated, decompressing..");
+ g_debug("AWeatherRadar: cached_cb - File updated, decompressing..");
char *argv[] = {"wsr88ddec", path, decompressed, NULL};
GPid pid;
GError *error = NULL;
static void on_time_changed(AWeatherView *view, char *time, gpointer _self)
{
AWeatherRadar *self = AWEATHER_RADAR(_self);
- g_message("radar:setting time");
+ g_debug("AWeatherRadar: on_time_changed - setting time");
// format: http://mesonet.agron.iastate.edu/data/nexrd2/raw/KABR/KABR_20090510_0323
char *site = aweather_view_get_site(view);
char *base = "http://mesonet.agron.iastate.edu/data/";
char *path = g_strdup_printf("nexrd2/raw/K%s/K%s_%s", site, site, time);
+ /* Clear out children */
+ GtkWidget *child = gtk_bin_get_child(GTK_BIN(self->config_body));
+ if (child)
+ gtk_widget_destroy(child);
+ gtk_container_add(GTK_CONTAINER(self->config_body),
+ gtk_label_new("Loading radar..."));
+ gtk_widget_show_all(self->config_body);
+ if (self->cur_radar)
+ RSL_free_radar(self->cur_radar);
self->cur_radar = NULL;
- self->cur_sweep = NULL; // Clear radar
+ self->cur_sweep = NULL;
aweather_gui_gl_redraw(self->gui);
+ /* Start loading the new radar */
cache_file(base, path, AWEATHER_AUTOMATIC, cached_cb, self);
g_free(path);
}
static void on_site_changed(AWeatherView *view, char *site, gpointer _self)
{
AWeatherRadar *self = AWEATHER_RADAR(_self);
- g_message("Loading wsr88d list for %s", site);
+ g_debug("AWeatherRadar: on_site_changed - Loading wsr88d list for %s", site);
char *time = NULL;
update_times(self, site, &time);
aweather_view_set_time(view, time);
g_free(time);
}
-static void on_refresh(AWeatherView *view, gpointer user_data, gpointer _self)
+static void on_refresh(AWeatherView *view, gpointer _self)
{
AWeatherRadar *self = AWEATHER_RADAR(_self);
char *site = aweather_view_get_site(view);
***********/
AWeatherRadar *aweather_radar_new(AWeatherGui *gui)
{
- //g_message("aweather_view_new");
+ g_debug("AWeatherRadar: new");
AWeatherRadar *self = g_object_new(AWEATHER_TYPE_RADAR, NULL);
self->gui = gui;
static void _aweather_radar_expose(AWeatherPlugin *_self)
{
AWeatherRadar *self = AWEATHER_RADAR(_self);
- g_message("radar:expose");
+ g_debug("AWeatherRadar: expose");
if (self->cur_sweep == NULL)
return;
Sweep *sweep = self->cur_sweep;