diff --git a/src/gswe-types.c b/src/gswe-types.c index dbb8926..651f3df 100644 --- a/src/gswe-types.c +++ b/src/gswe-types.c @@ -45,3 +45,17 @@ gswe_coordinates_copy(GsweCoordinates *coordinates) G_DEFINE_BOXED_TYPE(GsweCoordinates, gswe_coordinates, (GBoxedCopyFunc)gswe_coordinates_copy, (GBoxedFreeFunc)g_free); +static GsweHouseData * +gswe_house_data_copy(GsweHouseData *house_data) +{ + GsweHouseData *ret = g_new0(GsweHouseData, 1); + + ret->house = house_data->house; + ret->cusp_position = house_data->cusp_position; + ret->sign = house_data->sign; + + return ret; +} + +G_DEFINE_BOXED_TYPE(GsweHouseData, gswe_house_data, (GBoxedCopyFunc)gswe_house_data_copy, (GBoxedFreeFunc)g_free); + diff --git a/src/gswe-types.h b/src/gswe-types.h index aad3172..d7fa1b3 100644 --- a/src/gswe-types.h +++ b/src/gswe-types.h @@ -382,6 +382,9 @@ typedef struct { GsweSignInfo *sign; } GsweHouseData; +GType gswe_house_data_get_type(void); +#define GSWE_TYPE_HOUSE_DATA (gswe_house_data_get_type()) + /** * GsweAspectData: * @planet1: the first planet in the aspect