Base LCDPanel based, required for all LCDPanel drivers

Revision:
1:073d4f161f23
Parent:
0:3f345274c737
Child:
2:ab4040a7e8c9
--- a/LCDPanel.cpp	Fri Mar 09 00:55:25 2012 +0000
+++ b/LCDPanel.cpp	Fri Mar 09 01:49:18 2012 +0000
@@ -1,34 +1,37 @@
-/*
-Placeholder for Copyright notice, etc
-
-Author: silviogissi
-*/
-#include "LCDPanel.h"
-
- LCDPanel::LCDPanel(unsigned int width, unsigned int height) : _ymax(height-1), _xmax(width-1)
- {
- }
-
-// Default implementation, pixel by pixel
-void LCDPanel::fill(unsigned int x1, unsigned int y1, unsigned int x2, unsigned int y2, unsigned int color) {
-    CsTransaction(*this);
-    if (x1>x2) {unsigned int tmp=x1; x1=x2; x2=tmp;}
-    if (y1>y2) {unsigned int tmp=y1; y1=y2; y2=tmp;}
-    window(x1,y1,x2,y2);
-    for(unsigned int i=0;i<(x2-x1)*(y2-y1);i++) { pixel(color); }    
-}
-
-// Default implementation, pixel by pixel
-void LCDPanel::fill(unsigned int x1, unsigned int y1, unsigned int x2, unsigned int y2, const unsigned int* color) {
-    CsTransaction(*this);
-    if (x1>x2) {unsigned int tmp=x1; x1=x2; x2=tmp;}
-    if (y1>y2) {unsigned int tmp=y1; y1=y2; y2=tmp;}
-    window(x1,y1,x2,y2);
-    for(unsigned int i=0;i<(x2-x1)*(y2-y1);i++) { pixel(color[i]); }    
-}
-
-void LCDPanel::set_pixel(unsigned int x, unsigned int y, unsigned int color) {
-    CsTransaction(*this);
-    window(x,y,1,1);
-    pixel(x,y,color);
+/*
+Placeholder for Copyright notice, etc
+
+Author: silviogissi
+*/
+#include "LCDPanel.h"
+
+ LCDPanel::LCDPanel(unsigned int width, unsigned int height, PinName cs)
+    : _ymax(height-1)
+    , _xmax(width-1)
+    , _cs(cs)
+ {
+ }
+
+// Default implementation, pixel by pixel
+void LCDPanel::fill(unsigned int x1, unsigned int y1, unsigned int x2, unsigned int y2, unsigned int color) {
+    CsTransaction(this);
+    if (x1>x2) {unsigned int tmp=x1; x1=x2; x2=tmp;}
+    if (y1>y2) {unsigned int tmp=y1; y1=y2; y2=tmp;}
+    window(x1,y1,x2,y2);
+    for(unsigned int i=0;i<(x2-x1)*(y2-y1);i++) { pixel(color); }    
+}
+
+// Default implementation, pixel by pixel
+void LCDPanel::fill(unsigned int x1, unsigned int y1, unsigned int x2, unsigned int y2, const unsigned int* color) {
+    if (x1>x2) {unsigned int tmp=x1; x1=x2; x2=tmp;}
+    if (y1>y2) {unsigned int tmp=y1; y1=y2; y2=tmp;}
+    CsTransaction(this);
+    window(x1,y1,x2,y2);
+    for(unsigned int i=0;i<(x2-x1)*(y2-y1);i++) { pixel(color[i]); }    
+}
+
+void LCDPanel::set_pixel(unsigned int x, unsigned int y, unsigned int color) {
+    CsTransaction(this);
+    window(x,y,1,1);
+    pixel(color);
 }
\ No newline at end of file