Author: abrander
Date: 2009-06-23 23:08:56 +0200 (Tue, 23 Jun 2009)
New Revision: 2506
Modified:
trunk/plugins/cache/cache.c
Log:
Added capability to ignore ROI in RSCache.
Modified: trunk/plugins/cache/cache.c
===================================================================
--- trunk/plugins/cache/cache.c 2009-06-23 18:58:57 UTC (rev 2505)
+++ trunk/plugins/cache/cache.c 2009-06-23 21:08:56 UTC (rev 2506)
@@ -37,6 +37,7 @@
gboolean ignore_changed;
RSFilterChangedMask mask;
GdkRectangle *last_roi;
+ gboolean ignore_roi;
gint latency;
};
@@ -48,7 +49,8 @@
enum {
PROP_0,
- PROP_LATENCY
+ PROP_LATENCY,
+ PROP_IGNORE_ROI
};
static void get_property (GObject *object, guint property_id, GValue *value,
GParamSpec *pspec);
@@ -79,6 +81,12 @@
0, 10000, 0,
G_PARAM_READWRITE)
);
+ g_object_class_install_property(object_class,
+ PROP_IGNORE_ROI, g_param_spec_boolean(
+ "ignore-roi", "ignore-roi", "Ignore ROI parameter from
request",
+ FALSE,
+ G_PARAM_READWRITE)
+ );
filter_class->name = "Listen for changes and caches image data";
filter_class->get_image = get_image;
@@ -93,6 +101,7 @@
cache->image8 = NULL;
cache->ignore_changed = FALSE;
cache->last_roi = NULL;
+ cache->ignore_roi = FALSE;
cache->latency = 0;
}
@@ -106,6 +115,9 @@
case PROP_LATENCY:
g_value_set_int(value, cache->latency);
break;
+ case PROP_IGNORE_ROI:
+ g_value_set_boolean(value, cache->ignore_roi);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id,
pspec);
}
@@ -121,6 +133,9 @@
case PROP_LATENCY:
cache->latency = g_value_get_int(value);
break;
+ case PROP_IGNORE_ROI:
+ cache->ignore_roi = g_value_get_boolean(value);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id,
pspec);
}
@@ -150,7 +165,7 @@
{
RSCache *cache = RS_CACHE(filter);
- if (param && param->roi)
+ if (!cache->ignore_roi && (param && param->roi))
{
if (cache->last_roi)
{
@@ -177,7 +192,7 @@
{
RSCache *cache = RS_CACHE(filter);
- if (param)
+ if (!cache->ignore_roi && (param && param->roi))
{
if (cache->last_roi)
{
_______________________________________________
Rawstudio-commit mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit