Author: akv
Date: 2009-12-29 17:37:45 +0100 (Tue, 29 Dec 2009)
New Revision: 2878
Modified:
branches/rawstudio-ng-color/librawstudio/rs-lens-db.c
branches/rawstudio-ng-color/librawstudio/rs-lens.c
Log:
Adding camera make and model to RSLens and RSLensDB.
Modified: branches/rawstudio-ng-color/librawstudio/rs-lens-db.c
===================================================================
--- branches/rawstudio-ng-color/librawstudio/rs-lens-db.c 2009-12-29
15:50:20 UTC (rev 2877)
+++ branches/rawstudio-ng-color/librawstudio/rs-lens-db.c 2009-12-29
16:37:45 UTC (rev 2878)
@@ -129,6 +129,8 @@
gchar *lensfun_make;
gchar *lensfun_model;
gdouble min_focal, max_focal, min_aperture, max_aperture;
+ gchar *camera_make;
+ gchar *camera_model;
RSLens *lens = list->data;
@@ -141,6 +143,8 @@
"max-focal", &max_focal,
"min-aperture", &min_aperture,
"max-aperture", &max_aperture,
+ "camera-make", &camera_make,
+ "camera-model", &camera_model,
NULL);
xmlTextWriterStartElement(writer, BAD_CAST "lens");
@@ -158,6 +162,10 @@
xmlTextWriterWriteFormatElement(writer,
BAD_CAST "min-aperture", "%f", min_aperture);
if (max_aperture > 0.0)
xmlTextWriterWriteFormatElement(writer,
BAD_CAST "max-aperture", "%f", max_aperture);
+ if (camera_make)
+ xmlTextWriterWriteFormatElement(writer,
BAD_CAST "camera-make", "%s", camera_make);
+ if (camera_model)
+ xmlTextWriterWriteFormatElement(writer,
BAD_CAST "camera-model", "%s", camera_model);
xmlTextWriterEndElement(writer);
g_free(identifier);
@@ -218,6 +226,10 @@
g_object_set(lens,
"min-aperture", rs_atof(val), NULL);
else if ((!xmlStrcmp(entry->name,
BAD_CAST "max-aperture")))
g_object_set(lens,
"max-aperture", rs_atof(val), NULL);
+ else if ((!xmlStrcmp(entry->name,
BAD_CAST "camera-make")))
+ g_object_set(lens,
"camera-make", val, NULL);
+ else if ((!xmlStrcmp(entry->name,
BAD_CAST "camera-model")))
+ g_object_set(lens,
"camera-model", val, NULL);
xmlFree(val);
entry = entry->next;
}
Modified: branches/rawstudio-ng-color/librawstudio/rs-lens.c
===================================================================
--- branches/rawstudio-ng-color/librawstudio/rs-lens.c 2009-12-29 15:50:20 UTC
(rev 2877)
+++ branches/rawstudio-ng-color/librawstudio/rs-lens.c 2009-12-29 16:37:45 UTC
(rev 2878)
@@ -31,6 +31,8 @@
gchar *identifier;
gchar *lensfun_make;
gchar *lensfun_model;
+ gchar *camera_make;
+ gchar *camera_model;
};
G_DEFINE_TYPE (RSLens, rs_lens, G_TYPE_OBJECT)
@@ -44,7 +46,9 @@
PROP_MAX_APERTURE,
PROP_IDENTIFIER,
PROP_LENSFUN_MAKE,
- PROP_LENSFUN_MODEL
+ PROP_LENSFUN_MODEL,
+ PROP_CAMERA_MAKE,
+ PROP_CAMERA_MODEL
};
static void
@@ -78,6 +82,12 @@
case PROP_LENSFUN_MODEL:
g_value_set_string(value, lens->lensfun_model);
break;
+ case PROP_CAMERA_MAKE:
+ g_value_set_string(value, lens->camera_make);
+ break;
+ case PROP_CAMERA_MODEL:
+ g_value_set_string(value, lens->camera_model);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id,
pspec);
}
@@ -114,6 +124,14 @@
g_free(lens->lensfun_model);
lens->lensfun_model = g_value_dup_string(value);
break;
+ case PROP_CAMERA_MAKE:
+ g_free(lens->camera_make);
+ lens->camera_make = g_value_dup_string(value);
+ break;
+ case PROP_CAMERA_MODEL:
+ g_free(lens->camera_model);
+ lens->camera_model = g_value_dup_string(value);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id,
pspec);
}
@@ -182,6 +200,16 @@
PROP_LENSFUN_MODEL, g_param_spec_string(
"lensfun-model", "lensfun-model", "String helping Lensfun to
identify the lens model",
"", G_PARAM_READWRITE));
+
+ g_object_class_install_property(object_class,
+ PROP_CAMERA_MAKE, g_param_spec_string(
+ "camera-make", "camera-make", "String helping Lensfun to
identify the camera make",
+ "", G_PARAM_READWRITE));
+
+ g_object_class_install_property(object_class,
+ PROP_CAMERA_MODEL, g_param_spec_string(
+ "camera-model", "camera-model", "String helping Lensfun to
identify the camera model",
+ "", G_PARAM_READWRITE));
}
static void
@@ -196,6 +224,8 @@
lens->max_aperture = -1.0;
lens->lensfun_make = NULL;
lens->lensfun_model = NULL;
+ lens->camera_make = NULL;
+ lens->camera_model = NULL;
}
/**
@@ -224,6 +254,8 @@
"max-focal", metadata->lens_max_focal,
"min-aperture", metadata->lens_min_aperture,
"max-aperture", metadata->lens_max_aperture,
+ "camera-make", metadata->make_ascii,
+ "camera-model", metadata->model_ascii,
NULL);
}
_______________________________________________
Rawstudio-commit mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit