From 380c41b766ce7e196434923bd7ead515ad4fd1fd Mon Sep 17 00:00:00 2001
From: Joel Bodenmann <joel@seriouslyembedded.com>
Date: Fri, 3 Jul 2015 17:08:28 +0200
Subject: Improving Pixmap API

---
 demos/modules/gdisp/pixmap/main.c | 15 +++++++++------
 src/gdisp/gdisp_pixmap.c          |  8 ++++----
 src/gdisp/gdisp_pixmap.h          |  8 ++++----
 3 files changed, 17 insertions(+), 14 deletions(-)

diff --git a/demos/modules/gdisp/pixmap/main.c b/demos/modules/gdisp/pixmap/main.c
index 3adcf03f..c1cb9b55 100644
--- a/demos/modules/gdisp/pixmap/main.c
+++ b/demos/modules/gdisp/pixmap/main.c
@@ -32,8 +32,8 @@
 #define PIXMAP_WIDTH	40
 #define PIXMAP_HEIGHT	10
 
-static GDisplay	*pix;
-static pixel_t	*surface;
+static GDisplay* pixmap;
+static pixel_t* surface;
 
 int main(void) {
 	coord_t		width, height;
@@ -47,8 +47,8 @@ int main(void) {
     height = gdispGetHeight();
 
     // Create a pixmap and get a pointer to the bits
-    pix = gdispCreatePixmap(PIXMAP_WIDTH, PIXMAP_HEIGHT);
-    surface = gdispGetPixmapBits(pix);
+    pixmap = gdispPixmapCreate(PIXMAP_WIDTH, PIXMAP_HEIGHT);
+    surface = gdispPixmapGetBits(pixmap);
 
     // A pixmap can be treated either as a virtual display or as a memory framebuffer surface.
     // We demonstrate writing to it using both methods.
@@ -59,7 +59,7 @@ int main(void) {
     		surface[j*PIXMAP_WIDTH + i] = RGB2COLOR(0, 255-i*(256/PIXMAP_WIDTH), j*(256/PIXMAP_HEIGHT));
 
     // Secondly, show drawing a line on it like a virtual display
-    gdispGDrawLine(pix, 0, 0, gdispGGetWidth(pix)-1, gdispGGetHeight(pix)-1, White);
+    gdispGDrawLine(pixmap, 0, 0, gdispGGetWidth(pixmap)-1, gdispGGetHeight(pixmap)-1, White);
     
     i = j = 0;
     while(TRUE) {
@@ -78,6 +78,9 @@ int main(void) {
 
     	// Wait
     	gfxSleepMilliseconds(100);
-    }   
+    }
+
+    // Clean up
+    gdispPixmapDelete(pixmap);
 }
 
diff --git a/src/gdisp/gdisp_pixmap.c b/src/gdisp/gdisp_pixmap.c
index b6226289..a725d547 100644
--- a/src/gdisp/gdisp_pixmap.c
+++ b/src/gdisp/gdisp_pixmap.c
@@ -49,7 +49,7 @@ typedef struct pixmap {
 	color_t			pixels[1];			// We really want pixels[0] but some compilers don't allow that even though it is C standard.
 	} pixmap;
 
-GDisplay *gdispCreatePixmap(coord_t width, coord_t height) {
+GDisplay *gdispPixmapCreate(coord_t width, coord_t height) {
 	GDisplay	*g;
 	pixmap		*p;
 	unsigned	i;
@@ -86,20 +86,20 @@ GDisplay *gdispCreatePixmap(coord_t width, coord_t height) {
 	return g;
 }
 
-void gdispDeletePixmap(GDisplay *g) {
+void gdispPixmapDelete(GDisplay *g) {
 	if (gvmt(g) != GDISPVMT_pixmap)
 		return;
 	gdriverUnRegister(&g->d);
 }
 
-pixel_t	*gdispGetPixmapBits(GDisplay *g) {
+pixel_t	*gdispPixmapGetBits(GDisplay *g) {
 	if (gvmt(g) != GDISPVMT_pixmap)
 		return 0;
 	return ((pixmap *)g->priv)->pixels;
 }
 
 #if GDISP_NEED_PIXMAP_IMAGE
-	void *gdispGetPixmapMemoryImage(GDisplay *g) {
+	void *gdispPixmapGetMemoryImage(GDisplay *g) {
 		if (gvmt(g) != GDISPVMT_pixmap)
 			return 0;
 		return ((pixmap *)g->priv)->imghdr;
diff --git a/src/gdisp/gdisp_pixmap.h b/src/gdisp/gdisp_pixmap.h
index b9aa958e..5fc4580f 100644
--- a/src/gdisp/gdisp_pixmap.h
+++ b/src/gdisp/gdisp_pixmap.h
@@ -40,7 +40,7 @@ extern "C" {
 	 * @note	Because the RAM for the display area is allocated, on small micros only very small pixmaps should be considered.
 	 * 			For example a 100x100 at 16 bits per pixel would be 20K of RAM (plus some overheads).
 	 */
-	GDisplay *gdispCreatePixmap(coord_t width, coord_t height);
+	GDisplay *gdispPixmapCreate(coord_t width, coord_t height);
 
 	/**
 	 * @brief	Destroy an off-screen pixmap
@@ -49,7 +49,7 @@ extern "C" {
 	 *
 	 * @note	If a normal display is passed to this routine, it will be ignored.
 	 */
-	void gdispDeletePixmap(GDisplay *g);
+	void gdispPixmapDelete(GDisplay *g);
 
 	/**
 	 * @brief	Get a pointer to the pixels of the display surface.
@@ -62,7 +62,7 @@ extern "C" {
 	 * 			(although different pixmaps will have different pixel pointers). Once a pixmap is deleted, the pixel pointer
 	 * 			should not be used by the application.
 	 */
-	pixel_t	*gdispGetPixmapBits(GDisplay *g);
+	pixel_t	*gdispPixmapGetBits(GDisplay *g);
 
 	#if GDISP_NEED_PIXMAP_IMAGE || defined(__DOXYGEN__)
 		/**
@@ -78,7 +78,7 @@ extern "C" {
 		 * @note	If you are just wanting to copy to a real display it is more efficient to use @p gdispGetPixmapBits() and @p gdispGBlitArea().
 		 * @note	Like @p gdispGetPixmapBits(), the pointer returned is valid for the life of the pixmap.
 		 */
-		void *gdispGetPixmapMemoryImage(GDisplay *g);
+		void *gdispPixmapGetMemoryImage(GDisplay *g);
 	#endif
 	
 #ifdef __cplusplus
-- 
cgit v1.2.3