GWeatherInfo

GWeatherInfo

Synopsis

#include <libgweather/gweather.h>

enum                GWeatherForecastType;
GWeatherInfo *      gweather_info_new                   (GWeatherLocation *location,
                                                         GWeatherForecastType forecast_type);
GWeatherInfo *      gweather_info_new_for_world         (GWeatherLocation *world,
                                                         GWeatherLocation *location,
                                                         GWeatherForecastType forecast_type);
void                gweather_info_update                (GWeatherInfo *info);
void                gweather_info_abort                 (GWeatherInfo *info);
gboolean            gweather_info_is_valid              (GWeatherInfo *info);
gboolean            gweather_info_network_error         (GWeatherInfo *info);
const GWeatherLocation * gweather_info_get_location     (GWeatherInfo *info);
void                gweather_info_set_location          (GWeatherInfo *info,
                                                         GWeatherLocation *location);
GSList *            gweather_info_get_forecast_list     (GWeatherInfo *info);

enum                GWeatherProvider;
GWeatherProvider    gweather_info_get_enabled_providers (GWeatherInfo *info);
void                gweather_info_set_enabled_providers (GWeatherInfo *info,
                                                         GWeatherProvider providers);
const gchar *       gweather_info_get_attribution       (GWeatherInfo *info);

gchar *             gweather_info_get_location_name     (GWeatherInfo *info);
const gchar *       gweather_info_get_icon_name         (GWeatherInfo *info);
gchar *             gweather_info_get_weather_summary   (GWeatherInfo *info);
gchar *             gweather_info_get_temp_summary      (GWeatherInfo *info);
gchar *             gweather_info_get_update            (GWeatherInfo *info);
gchar *             gweather_info_get_sky               (GWeatherInfo *info);
gchar *             gweather_info_get_conditions        (GWeatherInfo *info);
gchar *             gweather_info_get_temp              (GWeatherInfo *info);
gchar *             gweather_info_get_temp_min          (GWeatherInfo *info);
gchar *             gweather_info_get_temp_max          (GWeatherInfo *info);
gchar *             gweather_info_get_dew               (GWeatherInfo *info);
gchar *             gweather_info_get_humidity          (GWeatherInfo *info);
gchar *             gweather_info_get_wind              (GWeatherInfo *info);
gchar *             gweather_info_get_pressure          (GWeatherInfo *info);
gchar *             gweather_info_get_visibility        (GWeatherInfo *info);
gchar *             gweather_info_get_apparent          (GWeatherInfo *info);
gchar *             gweather_info_get_sunrise           (GWeatherInfo *info);
gchar *             gweather_info_get_sunset            (GWeatherInfo *info);
gchar *             gweather_info_get_forecast          (GWeatherInfo *info);
GdkPixbufAnimation * gweather_info_get_radar            (GWeatherInfo *info);

enum                GWeatherConditionPhenomenon;
enum                GWeatherConditionQualifier;
struct              GWeatherConditions;
const gchar *       gweather_conditions_to_string       (GWeatherConditions *conditions);
enum                GWeatherSky;
const gchar *       gweather_sky_to_string              (GWeatherSky sky);
enum                GWeatherWindDirection;
const gchar *       gweather_wind_direction_to_string   (GWeatherWindDirection wind);
typedef             GWeatherMoonLatitude;
typedef             GWeatherMoonPhase;
enum                GWeatherDistanceUnit;
enum                GWeatherPressureUnit;
enum                GWeatherSpeedUnit;
enum                GWeatherTemperatureUnit;

gboolean            gweather_info_get_value_update      (GWeatherInfo *info,
                                                         time_t *value);
gboolean            gweather_info_get_value_sky         (GWeatherInfo *info,
                                                         GWeatherSky *sky);
gboolean            gweather_info_get_value_conditions  (GWeatherInfo *info,
                                                         GWeatherConditionPhenomenon *phenomenon,
                                                         GWeatherConditionQualifier *qualifier);
gboolean            gweather_info_get_value_temp        (GWeatherInfo *info,
                                                         GWeatherTemperatureUnit unit,
                                                         gdouble *value);
gboolean            gweather_info_get_value_temp_min    (GWeatherInfo *info,
                                                         GWeatherTemperatureUnit unit,
                                                         gdouble *value);
gboolean            gweather_info_get_value_temp_max    (GWeatherInfo *info,
                                                         GWeatherTemperatureUnit unit,
                                                         gdouble *value);
gboolean            gweather_info_get_value_dew         (GWeatherInfo *info,
                                                         GWeatherTemperatureUnit unit,
                                                         gdouble *value);
gboolean            gweather_info_get_value_apparent    (GWeatherInfo *info,
                                                         GWeatherTemperatureUnit unit,
                                                         gdouble *value);
gboolean            gweather_info_get_value_wind        (GWeatherInfo *info,
                                                         GWeatherSpeedUnit unit,
                                                         gdouble *speed,
                                                         GWeatherWindDirection *direction);
gboolean            gweather_info_get_value_pressure    (GWeatherInfo *info,
                                                         GWeatherPressureUnit unit,
                                                         gdouble *value);
gboolean            gweather_info_get_value_visibility  (GWeatherInfo *info,
                                                         GWeatherDistanceUnit unit,
                                                         gdouble *value);
gboolean            gweather_info_get_value_sunrise     (GWeatherInfo *info,
                                                         time_t *value);
gboolean            gweather_info_get_value_sunset      (GWeatherInfo *info,
                                                         time_t *value);
gint                gweather_info_next_sun_event        (GWeatherInfo *info);
gboolean            gweather_info_get_value_moonphase   (GWeatherInfo *info,
                                                         GWeatherMoonPhase *value,
                                                         GWeatherMoonLatitude *lat);
gboolean            gweather_info_get_upcoming_moonphases
                                                        (GWeatherInfo *info,
                                                         time_t *phases);

Description

GWeatherInfo provides a handy way to access weather conditions and forecasts from a GWeatherLocation, aggregating multiple different web services.

It includes also astronomical data such as sunrise times and moon phases.

Details

enum GWeatherForecastType

typedef enum {
 /*< underscore_name=gweather_forecast_type >*/
    GWEATHER_FORECAST_STATE,
    GWEATHER_FORECAST_ZONE,
    GWEATHER_FORECAST_LIST
} GWeatherForecastType;

GWEATHER_FORECAST_STATE

GWEATHER_FORECAST_ZONE

GWEATHER_FORECAST_LIST


gweather_info_new ()

GWeatherInfo *      gweather_info_new                   (GWeatherLocation *location,
                                                         GWeatherForecastType forecast_type);

Builds a new GWeatherInfo that will provide weather information about location. The returned info will not be ready until the "updated" signal is emitted.

location :

the desidered GWeatherLocation (NULL for default). [allow-none]

forecast_type :

the type of forecast requested

Returns :

a new GWeatherInfo. [transfer full]

gweather_info_new_for_world ()

GWeatherInfo *      gweather_info_new_for_world         (GWeatherLocation *world,
                                                         GWeatherLocation *location,
                                                         GWeatherForecastType forecast_type);

Similar to gweather_info_new(), but also has a world parameter, that allow controlling the hierarchy of GWeatherLocation to which location (or the default one taken from GSettings) belongs.

world :

a GWeatherLocation representing the whole world

location :

the desidered GWeatherLocation (NULL for default). [allow-none]

forecast_type :

the type of forecast requested

Returns :

a new GWeatherInfo. [transfer full]

gweather_info_update ()

void                gweather_info_update                (GWeatherInfo *info);

gweather_info_abort ()

void                gweather_info_abort                 (GWeatherInfo *info);

gweather_info_is_valid ()

gboolean            gweather_info_is_valid              (GWeatherInfo *info);

gweather_info_network_error ()

gboolean            gweather_info_network_error         (GWeatherInfo *info);

gweather_info_get_location ()

const GWeatherLocation * gweather_info_get_location     (GWeatherInfo *info);

gweather_info_set_location ()

void                gweather_info_set_location          (GWeatherInfo *info,
                                                         GWeatherLocation *location);

Changes info to report weather for location.

info :

a GWeatherInfo

location :

a location for which weather is desired. [allow-none]

gweather_info_get_forecast_list ()

GSList *            gweather_info_get_forecast_list     (GWeatherInfo *info);

info :

a GWeatherInfo

Returns :

list of GWeatherInfo* objects for the forecast. The list is owned by the 'info' object thus is alive as long as the 'info'. This list is filled only when requested with type FORECAST_LIST and if available for given location. The 'update' property is the date/time when the forecast info is used for. [transfer none][element-type GWeather.Info]

enum GWeatherProvider

typedef enum {
 /*< flags, underscore_name=gweather_provider >*/
    GWEATHER_PROVIDER_NONE = 0,
    GWEATHER_PROVIDER_METAR = 1,
    GWEATHER_PROVIDER_IWIN = 1 << 2,
    GWEATHER_PROVIDER_YAHOO = 1 << 3,
    GWEATHER_PROVIDER_YR_NO = 1 << 4,
    GWEATHER_PROVIDER_ALL = 31
} GWeatherProvider;

GWEATHER_PROVIDER_NONE

no provider, no weather information available

GWEATHER_PROVIDER_METAR

METAR office, providing current conditions worldwide

GWEATHER_PROVIDER_IWIN

US weather office, providing 7 days of forecast

GWEATHER_PROVIDER_YAHOO

Yahoo Weather Service, worldwide but non commercial only

GWEATHER_PROVIDER_YR_NO

Yr.no service, worldwide but requires attribution

GWEATHER_PROVIDER_ALL

enable all available providers

gweather_info_get_enabled_providers ()

GWeatherProvider    gweather_info_get_enabled_providers (GWeatherInfo *info);

gweather_info_set_enabled_providers ()

void                gweather_info_set_enabled_providers (GWeatherInfo *info,
                                                         GWeatherProvider providers);

gweather_info_get_attribution ()

const gchar *       gweather_info_get_attribution       (GWeatherInfo *info);

Some weather services require the application showing the data to include an attribution text, possibly including links to the service website. This must be shown prominently toghether with the data.

info :

a GWeatherInfo

Returns :

the required attribution text, in Pango markup form, or NULL if not required. [transfer none]

gweather_info_get_location_name ()

gchar *             gweather_info_get_location_name     (GWeatherInfo *info);

gweather_info_get_icon_name ()

const gchar *       gweather_info_get_icon_name         (GWeatherInfo *info);

gweather_info_get_weather_summary ()

gchar *             gweather_info_get_weather_summary   (GWeatherInfo *info);

info :

a GWeatherInfo

Returns :

a summary for current weather conditions. [transfer full]

gweather_info_get_temp_summary ()

gchar *             gweather_info_get_temp_summary      (GWeatherInfo *info);

gweather_info_get_update ()

gchar *             gweather_info_get_update            (GWeatherInfo *info);

gweather_info_get_sky ()

gchar *             gweather_info_get_sky               (GWeatherInfo *info);

gweather_info_get_conditions ()

gchar *             gweather_info_get_conditions        (GWeatherInfo *info);

gweather_info_get_temp ()

gchar *             gweather_info_get_temp              (GWeatherInfo *info);

gweather_info_get_temp_min ()

gchar *             gweather_info_get_temp_min          (GWeatherInfo *info);

gweather_info_get_temp_max ()

gchar *             gweather_info_get_temp_max          (GWeatherInfo *info);

gweather_info_get_dew ()

gchar *             gweather_info_get_dew               (GWeatherInfo *info);

gweather_info_get_humidity ()

gchar *             gweather_info_get_humidity          (GWeatherInfo *info);

gweather_info_get_wind ()

gchar *             gweather_info_get_wind              (GWeatherInfo *info);

gweather_info_get_pressure ()

gchar *             gweather_info_get_pressure          (GWeatherInfo *info);

gweather_info_get_visibility ()

gchar *             gweather_info_get_visibility        (GWeatherInfo *info);

gweather_info_get_apparent ()

gchar *             gweather_info_get_apparent          (GWeatherInfo *info);

gweather_info_get_sunrise ()

gchar *             gweather_info_get_sunrise           (GWeatherInfo *info);

gweather_info_get_sunset ()

gchar *             gweather_info_get_sunset            (GWeatherInfo *info);

gweather_info_get_forecast ()

gchar *             gweather_info_get_forecast          (GWeatherInfo *info);

gweather_info_get_radar ()

GdkPixbufAnimation * gweather_info_get_radar            (GWeatherInfo *info);

info :

a GWeatherInfo

Returns :

what?. [transfer none]

enum GWeatherConditionPhenomenon

typedef enum {
 /*< underscore_name=gweather_phenomenon >*/
    GWEATHER_PHENOMENON_INVALID = -1,

    GWEATHER_PHENOMENON_NONE,

    GWEATHER_PHENOMENON_DRIZZLE,
    GWEATHER_PHENOMENON_RAIN,
    GWEATHER_PHENOMENON_SNOW,
    GWEATHER_PHENOMENON_SNOW_GRAINS,
    GWEATHER_PHENOMENON_ICE_CRYSTALS,
    GWEATHER_PHENOMENON_ICE_PELLETS,
    GWEATHER_PHENOMENON_HAIL,
    GWEATHER_PHENOMENON_SMALL_HAIL,
    GWEATHER_PHENOMENON_UNKNOWN_PRECIPITATION,

    GWEATHER_PHENOMENON_MIST,
    GWEATHER_PHENOMENON_FOG,
    GWEATHER_PHENOMENON_SMOKE,
    GWEATHER_PHENOMENON_VOLCANIC_ASH,
    GWEATHER_PHENOMENON_SAND,
    GWEATHER_PHENOMENON_HAZE,
    GWEATHER_PHENOMENON_SPRAY,
    GWEATHER_PHENOMENON_DUST,

    GWEATHER_PHENOMENON_SQUALL,
    GWEATHER_PHENOMENON_SANDSTORM,
    GWEATHER_PHENOMENON_DUSTSTORM,
    GWEATHER_PHENOMENON_FUNNEL_CLOUD,
    GWEATHER_PHENOMENON_TORNADO,
    GWEATHER_PHENOMENON_DUST_WHIRLS,

    GWEATHER_PHENOMENON_LAST
} GWeatherConditionPhenomenon;

GWEATHER_PHENOMENON_INVALID

GWEATHER_PHENOMENON_NONE

GWEATHER_PHENOMENON_DRIZZLE

GWEATHER_PHENOMENON_RAIN

GWEATHER_PHENOMENON_SNOW

GWEATHER_PHENOMENON_SNOW_GRAINS

GWEATHER_PHENOMENON_ICE_CRYSTALS

GWEATHER_PHENOMENON_ICE_PELLETS

GWEATHER_PHENOMENON_HAIL

GWEATHER_PHENOMENON_SMALL_HAIL

GWEATHER_PHENOMENON_UNKNOWN_PRECIPITATION

GWEATHER_PHENOMENON_MIST

GWEATHER_PHENOMENON_FOG

GWEATHER_PHENOMENON_SMOKE

GWEATHER_PHENOMENON_VOLCANIC_ASH

GWEATHER_PHENOMENON_SAND

GWEATHER_PHENOMENON_HAZE

GWEATHER_PHENOMENON_SPRAY

GWEATHER_PHENOMENON_DUST

GWEATHER_PHENOMENON_SQUALL

GWEATHER_PHENOMENON_SANDSTORM

GWEATHER_PHENOMENON_DUSTSTORM

GWEATHER_PHENOMENON_FUNNEL_CLOUD

GWEATHER_PHENOMENON_TORNADO

GWEATHER_PHENOMENON_DUST_WHIRLS

GWEATHER_PHENOMENON_LAST


enum GWeatherConditionQualifier

typedef enum {
 /*< underscore_name=gweather_qualifier >*/
    GWEATHER_QUALIFIER_INVALID = -1,

    GWEATHER_QUALIFIER_NONE,

    GWEATHER_QUALIFIER_VICINITY,

    GWEATHER_QUALIFIER_LIGHT,
    GWEATHER_QUALIFIER_MODERATE,
    GWEATHER_QUALIFIER_HEAVY,
    GWEATHER_QUALIFIER_SHALLOW,
    GWEATHER_QUALIFIER_PATCHES,
    GWEATHER_QUALIFIER_PARTIAL,
    GWEATHER_QUALIFIER_THUNDERSTORM,
    GWEATHER_QUALIFIER_BLOWING,
    GWEATHER_QUALIFIER_SHOWERS,
    GWEATHER_QUALIFIER_DRIFTING,
    GWEATHER_QUALIFIER_FREEZING,

    GWEATHER_QUALIFIER_LAST
} GWeatherConditionQualifier;

GWEATHER_QUALIFIER_INVALID

GWEATHER_QUALIFIER_NONE

GWEATHER_QUALIFIER_VICINITY

GWEATHER_QUALIFIER_LIGHT

GWEATHER_QUALIFIER_MODERATE

GWEATHER_QUALIFIER_HEAVY

GWEATHER_QUALIFIER_SHALLOW

GWEATHER_QUALIFIER_PATCHES

GWEATHER_QUALIFIER_PARTIAL

GWEATHER_QUALIFIER_THUNDERSTORM

GWEATHER_QUALIFIER_BLOWING

GWEATHER_QUALIFIER_SHOWERS

GWEATHER_QUALIFIER_DRIFTING

GWEATHER_QUALIFIER_FREEZING

GWEATHER_QUALIFIER_LAST


struct GWeatherConditions

struct GWeatherConditions {
    gboolean significant;
    GWeatherConditionPhenomenon phenomenon;
    GWeatherConditionQualifier qualifier;
};

gweather_conditions_to_string ()

const gchar *       gweather_conditions_to_string       (GWeatherConditions *conditions);

enum GWeatherSky

typedef enum {
 /*< underscore_name=gweather_sky >*/
    GWEATHER_SKY_INVALID = -1,
    GWEATHER_SKY_CLEAR,
    GWEATHER_SKY_BROKEN,
    GWEATHER_SKY_SCATTERED,
    GWEATHER_SKY_FEW,
    GWEATHER_SKY_OVERCAST,
    GWEATHER_SKY_LAST
} GWeatherSky;

GWEATHER_SKY_INVALID

GWEATHER_SKY_CLEAR

GWEATHER_SKY_BROKEN

GWEATHER_SKY_SCATTERED

GWEATHER_SKY_FEW

GWEATHER_SKY_OVERCAST

GWEATHER_SKY_LAST


gweather_sky_to_string ()

const gchar *       gweather_sky_to_string              (GWeatherSky sky);

enum GWeatherWindDirection

typedef enum {
 /*< underscore_name=gweather_wind_direction >*/
    GWEATHER_WIND_INVALID = -1,
    GWEATHER_WIND_VARIABLE,
    GWEATHER_WIND_N,
    GWEATHER_WIND_NNE,
    GWEATHER_WIND_NE,
    GWEATHER_WIND_ENE,
    GWEATHER_WIND_E,
    GWEATHER_WIND_ESE,
    GWEATHER_WIND_SE,
    GWEATHER_WIND_SSE,
    GWEATHER_WIND_S,
    GWEATHER_WIND_SSW,
    GWEATHER_WIND_SW,
    GWEATHER_WIND_WSW,
    GWEATHER_WIND_W,
    GWEATHER_WIND_WNW,
    GWEATHER_WIND_NW,
    GWEATHER_WIND_NNW,
    GWEATHER_WIND_LAST
} GWeatherWindDirection;

GWEATHER_WIND_INVALID

GWEATHER_WIND_VARIABLE

GWEATHER_WIND_N

GWEATHER_WIND_NNE

GWEATHER_WIND_NE

GWEATHER_WIND_ENE

GWEATHER_WIND_E

GWEATHER_WIND_ESE

GWEATHER_WIND_SE

GWEATHER_WIND_SSE

GWEATHER_WIND_S

GWEATHER_WIND_SSW

GWEATHER_WIND_SW

GWEATHER_WIND_WSW

GWEATHER_WIND_W

GWEATHER_WIND_WNW

GWEATHER_WIND_NW

GWEATHER_WIND_NNW

GWEATHER_WIND_LAST


gweather_wind_direction_to_string ()

const gchar *       gweather_wind_direction_to_string   (GWeatherWindDirection wind);

GWeatherMoonLatitude

typedef gdouble GWeatherMoonLatitude;

GWeatherMoonPhase

typedef gdouble GWeatherMoonPhase;

enum GWeatherDistanceUnit

typedef enum {
 /*< underscore_name=gweather_distance_unit >*/
    GWEATHER_DISTANCE_UNIT_INVALID = 0,
    GWEATHER_DISTANCE_UNIT_DEFAULT,
    GWEATHER_DISTANCE_UNIT_METERS,
    GWEATHER_DISTANCE_UNIT_KM,
    GWEATHER_DISTANCE_UNIT_MILES
} GWeatherDistanceUnit;

GWEATHER_DISTANCE_UNIT_INVALID

GWEATHER_DISTANCE_UNIT_DEFAULT

GWEATHER_DISTANCE_UNIT_METERS

GWEATHER_DISTANCE_UNIT_KM

GWEATHER_DISTANCE_UNIT_MILES


enum GWeatherPressureUnit

typedef enum {
 /*< underscore_name=gweather_pressure_unit >*/
    GWEATHER_PRESSURE_UNIT_INVALID = 0,
    GWEATHER_PRESSURE_UNIT_DEFAULT,
    GWEATHER_PRESSURE_UNIT_KPA,    /* kiloPascal */
    GWEATHER_PRESSURE_UNIT_HPA,    /* hectoPascal */
    GWEATHER_PRESSURE_UNIT_MB,     /* 1 millibars = 1 hectoPascal */
    GWEATHER_PRESSURE_UNIT_MM_HG,  /* millimeters of mercury */
    GWEATHER_PRESSURE_UNIT_INCH_HG, /* inches of mercury */
    GWEATHER_PRESSURE_UNIT_ATM     /* atmosphere */
} GWeatherPressureUnit;

GWEATHER_PRESSURE_UNIT_INVALID

GWEATHER_PRESSURE_UNIT_DEFAULT

GWEATHER_PRESSURE_UNIT_KPA

GWEATHER_PRESSURE_UNIT_HPA

GWEATHER_PRESSURE_UNIT_MB

GWEATHER_PRESSURE_UNIT_MM_HG

GWEATHER_PRESSURE_UNIT_INCH_HG

GWEATHER_PRESSURE_UNIT_ATM


enum GWeatherSpeedUnit

typedef enum {
 /*< underscore_name=gweather_speed_unit >*/
    GWEATHER_SPEED_UNIT_INVALID = 0,
    GWEATHER_SPEED_UNIT_DEFAULT,
    GWEATHER_SPEED_UNIT_MS,    /* metres per second */
    GWEATHER_SPEED_UNIT_KPH,   /* kilometres per hour */
    GWEATHER_SPEED_UNIT_MPH,   /* miles per hour */
    GWEATHER_SPEED_UNIT_KNOTS, /* Knots */
    GWEATHER_SPEED_UNIT_BFT    /* Beaufort scale */
} GWeatherSpeedUnit;

GWEATHER_SPEED_UNIT_INVALID

GWEATHER_SPEED_UNIT_DEFAULT

GWEATHER_SPEED_UNIT_MS

GWEATHER_SPEED_UNIT_KPH

GWEATHER_SPEED_UNIT_MPH

GWEATHER_SPEED_UNIT_KNOTS

GWEATHER_SPEED_UNIT_BFT


enum GWeatherTemperatureUnit

typedef enum {
 /*< underscore_name=gweather_temperature_unit >*/
    GWEATHER_TEMP_UNIT_INVALID = 0,
    GWEATHER_TEMP_UNIT_DEFAULT,
    GWEATHER_TEMP_UNIT_KELVIN,
    GWEATHER_TEMP_UNIT_CENTIGRADE,
    GWEATHER_TEMP_UNIT_FAHRENHEIT
} GWeatherTemperatureUnit;

GWEATHER_TEMP_UNIT_INVALID

GWEATHER_TEMP_UNIT_DEFAULT

GWEATHER_TEMP_UNIT_KELVIN

GWEATHER_TEMP_UNIT_CENTIGRADE

GWEATHER_TEMP_UNIT_FAHRENHEIT


gweather_info_get_value_update ()

gboolean            gweather_info_get_value_update      (GWeatherInfo *info,
                                                         time_t *value);

info :

a GWeatherInfo

value :

the time info was last updated. [out][type glong]

Returns :

TRUE is value is valid, FALSE otherwise.

gweather_info_get_value_sky ()

gboolean            gweather_info_get_value_sky         (GWeatherInfo *info,
                                                         GWeatherSky *sky);

Fills out sky with current sky conditions.

info :

a GWeatherInfo

sky :

a location for a GWeatherSky. [out]

Returns :

TRUE is sky is valid, FALSE otherwise.

gweather_info_get_value_conditions ()

gboolean            gweather_info_get_value_conditions  (GWeatherInfo *info,
                                                         GWeatherConditionPhenomenon *phenomenon,
                                                         GWeatherConditionQualifier *qualifier);

Fills out phenomenon and qualifier with current weather conditions.

info :

a GWeatherInfo

phenomenon :

a location for a GWeatherConditionPhenomenon. [out]

qualifier :

a location for a GWeatherConditionQualifier. [out]

Returns :

TRUE is out arguments are valid, FALSE otherwise.

gweather_info_get_value_temp ()

gboolean            gweather_info_get_value_temp        (GWeatherInfo *info,
                                                         GWeatherTemperatureUnit unit,
                                                         gdouble *value);

info :

a GWeatherInfo

unit :

the desired unit, as a GWeatherTemperatureUnit

value :

the temperature value. [out]

Returns :

TRUE is value is valid, FALSE otherwise.

gweather_info_get_value_temp_min ()

gboolean            gweather_info_get_value_temp_min    (GWeatherInfo *info,
                                                         GWeatherTemperatureUnit unit,
                                                         gdouble *value);

info :

a GWeatherInfo

unit :

the desired unit, as a GWeatherTemperatureUnit

value :

the minimum temperature value. [out]

Returns :

TRUE is value is valid, FALSE otherwise.

gweather_info_get_value_temp_max ()

gboolean            gweather_info_get_value_temp_max    (GWeatherInfo *info,
                                                         GWeatherTemperatureUnit unit,
                                                         gdouble *value);

info :

a GWeatherInfo

unit :

the desired unit, as a GWeatherTemperatureUnit

value :

the maximum temperature value. [out]

Returns :

TRUE is value is valid, FALSE otherwise.

gweather_info_get_value_dew ()

gboolean            gweather_info_get_value_dew         (GWeatherInfo *info,
                                                         GWeatherTemperatureUnit unit,
                                                         gdouble *value);

info :

a GWeatherInfo

unit :

the desired unit, as a GWeatherTemperatureUnit

value :

the dew point. [out]

Returns :

TRUE is value is valid, FALSE otherwise.

gweather_info_get_value_apparent ()

gboolean            gweather_info_get_value_apparent    (GWeatherInfo *info,
                                                         GWeatherTemperatureUnit unit,
                                                         gdouble *value);

info :

a GWeatherInfo

unit :

the desired unit, as a GWeatherTemperatureUnit

value :

the apparent temperature. [out]

Returns :

TRUE is value is valid, FALSE otherwise.

gweather_info_get_value_wind ()

gboolean            gweather_info_get_value_wind        (GWeatherInfo *info,
                                                         GWeatherSpeedUnit unit,
                                                         gdouble *speed,
                                                         GWeatherWindDirection *direction);

info :

a GWeatherInfo

unit :

the desired unit, as a GWeatherSpeedUnit

speed :

forecasted wind speed. [out]

direction :

forecasted wind direction. [out]

Returns :

TRUE if speed and direction are valid, FALSE otherwise.

gweather_info_get_value_pressure ()

gboolean            gweather_info_get_value_pressure    (GWeatherInfo *info,
                                                         GWeatherPressureUnit unit,
                                                         gdouble *value);

info :

a GWeatherInfo

unit :

the desired unit, as a GWeatherPressureUnit

value :

forecasted pressure, expressed in unit. [out]

Returns :

TRUE if value is valid, FALSE otherwise.

gweather_info_get_value_visibility ()

gboolean            gweather_info_get_value_visibility  (GWeatherInfo *info,
                                                         GWeatherDistanceUnit unit,
                                                         gdouble *value);

info :

a GWeatherInfo

unit :

the desired unit, as a GWeatherDistanceUnit

value :

forecasted visibility, expressed in unit. [out]

Returns :

TRUE if value is valid, FALSE otherwise.

gweather_info_get_value_sunrise ()

gboolean            gweather_info_get_value_sunrise     (GWeatherInfo *info,
                                                         time_t *value);

info :

a GWeatherInfo

value :

the time of sunrise. [out][type gulong]

Returns :

TRUE is value is valid, FALSE otherwise.

gweather_info_get_value_sunset ()

gboolean            gweather_info_get_value_sunset      (GWeatherInfo *info,
                                                         time_t *value);

info :

a GWeatherInfo

value :

the time of sunset. [out][type gulong]

Returns :

TRUE is value is valid, FALSE otherwise.

gweather_info_next_sun_event ()

gint                gweather_info_next_sun_event        (GWeatherInfo *info);

gweather_info_get_value_moonphase ()

gboolean            gweather_info_get_value_moonphase   (GWeatherInfo *info,
                                                         GWeatherMoonPhase *value,
                                                         GWeatherMoonLatitude *lat);

info :

a GWeatherInfo

value :

the current moon phase (represented as the visible percentage). [out]

lat :

the latitude the moon is at (???). [out]

Returns :

TRUE is value is valid, FALSE otherwise.

gweather_info_get_upcoming_moonphases ()

gboolean            gweather_info_get_upcoming_moonphases
                                                        (GWeatherInfo *info,
                                                         time_t *phases);

info :

a GWeatherInfo containing the time_t of interest

phases :

An array of four time_t values that will hold the returned values. The values are estimates of the time of the next new, quarter, full and three-quarter moons. [out][array fixed-size=4][element-type gulong]

Returns :

gboolean indicating success or failure