diff options
author | Matthias Vogelgesang <matthias.vogelgesang@kit.edu> | 2013-11-05 08:19:46 +0100 |
---|---|---|
committer | Matthias Vogelgesang <matthias.vogelgesang@kit.edu> | 2013-11-05 09:12:05 +0100 |
commit | 80ac5c5d183d6efc3e554a638770637086f0fb78 (patch) | |
tree | 4907795a3e215aa8107ad8d5f9c10bf2feb6f140 /plugins/pco | |
parent | 3c7f5aad71b5129f9baf42bc35aad90465a584b0 (diff) | |
download | libuca-80ac5c5d183d6efc3e554a638770637086f0fb78.tar.gz libuca-80ac5c5d183d6efc3e554a638770637086f0fb78.tar.bz2 libuca-80ac5c5d183d6efc3e554a638770637086f0fb78.tar.xz libuca-80ac5c5d183d6efc3e554a638770637086f0fb78.zip |
Fix #15: set correct pixel sizes for pco.*
Diffstat (limited to 'plugins/pco')
-rw-r--r-- | plugins/pco/uca-pco-camera.c | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/plugins/pco/uca-pco-camera.c b/plugins/pco/uca-pco-camera.c index 7629972..bae7b53 100644 --- a/plugins/pco/uca-pco-camera.c +++ b/plugins/pco/uca-pco-camera.c @@ -142,6 +142,8 @@ static gint base_overrideables[] = { PROP_NAME, PROP_SENSOR_WIDTH, PROP_SENSOR_HEIGHT, + PROP_SENSOR_PIXEL_WIDTH, + PROP_SENSOR_PIXEL_HEIGHT, PROP_SENSOR_BITDEPTH, PROP_SENSOR_HORIZONTAL_BINNING, PROP_SENSOR_HORIZONTAL_BINNINGS, @@ -815,7 +817,7 @@ uca_pco_camera_set_property(GObject *object, guint property_id, const GValue *va } static void -uca_pco_camera_get_property(GObject *object, guint property_id, GValue *value, GParamSpec *pspec) +uca_pco_camera_get_property (GObject *object, guint property_id, GValue *value, GParamSpec *pspec) { UcaPcoCameraPrivate *priv = UCA_PCO_CAMERA_GET_PRIVATE(object); guint err = PCO_NOERROR; @@ -837,6 +839,34 @@ uca_pco_camera_get_property(GObject *object, guint property_id, GValue *value, G g_value_set_uint(value, priv->height); break; + case PROP_SENSOR_PIXEL_WIDTH: + switch (priv->description->type) { + case CAMERATYPE_PCO_EDGE: + g_value_set_double (value, 0.0000065); + break; + case CAMERATYPE_PCO_DIMAX_STD: + g_value_set_double (value, 0.0000110); + break; + case CAMERATYPE_PCO4000: + g_value_set_double (value, 0.0000090); + break; + } + break; + + case PROP_SENSOR_PIXEL_HEIGHT: + switch (priv->description->type) { + case CAMERATYPE_PCO_EDGE: + g_value_set_double (value, 0.0000065); + break; + case CAMERATYPE_PCO_DIMAX_STD: + g_value_set_double (value, 0.0000110); + break; + case CAMERATYPE_PCO4000: + g_value_set_double (value, 0.0000090); + break; + } + break; + case PROP_SENSOR_WIDTH_EXTENDED: g_value_set_uint(value, priv->width_ex < priv->width ? priv->width : priv->width_ex); break; |