summaryrefslogtreecommitdiff
path: root/dw/imgrenderer.hh
diff options
context:
space:
mode:
authorSebastian Geerken <devnull@localhost>2013-10-22 10:33:03 +0200
committerSebastian Geerken <devnull@localhost>2013-10-22 10:33:03 +0200
commit10934cb7dbb3eeaa30a9041228cf26c1c790bf5d (patch)
treeb11e3a90642ef171963f0b9e9e60f06183b5a455 /dw/imgrenderer.hh
parent385e55080f609bd86dc6d61113810773761e0b09 (diff)
Extended ImgRenderer; new option (in the code) for drawing background images at once.
Diffstat (limited to 'dw/imgrenderer.hh')
-rw-r--r--dw/imgrenderer.hh17
1 files changed, 17 insertions, 0 deletions
diff --git a/dw/imgrenderer.hh b/dw/imgrenderer.hh
index e254ae66..325a1998 100644
--- a/dw/imgrenderer.hh
+++ b/dw/imgrenderer.hh
@@ -32,6 +32,21 @@ public:
* The implementation will typically queue the respective area for drawing.
*/
virtual void drawRow (int row) = 0;
+
+ /**
+ * \brief Called, when all image data has been retrieved.
+ *
+ * The implementation may use this instead of "drawRow" for drawing, to
+ * limit the number of draws.
+ */
+ virtual void finish () = 0;
+
+ /**
+ * \brief Called, when there are problems with the retrieval of image data.
+ *
+ * The implementation may use this to indicate an error.
+ */
+ virtual void fatal () = 0;
};
/**
@@ -54,6 +69,8 @@ public:
void setBuffer (core::Imgbuf *buffer, bool resize);
void drawRow (int row);
+ void finish ();
+ void fatal ();
void put (ImgRenderer *child)
{ children->put (new lout::object::TypedPointer <ImgRenderer> (child)); }